您好,登錄后才能下訂單哦!
本篇內(nèi)容主要講解“如何操作Thinkphp 框架配置操作之配置加載與讀取配置”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強(qiáng)。下面就讓小編來帶大家學(xué)習(xí)“如何操作Thinkphp 框架配置操作之配置加載與讀取配置”吧!
在ThinkPHP中,一般來說應(yīng)用的配置文件是自動加載的,加載的順序是:
慣例配置->應(yīng)用配置->模式配置->調(diào)試配置->狀態(tài)配置->模塊配置->擴(kuò)展配置->動態(tài)配置
以上是配置文件的加載順序,因為后面的配置會覆蓋之前的同名配置(在沒有生效的前提下),所以配置的優(yōu)先順序從右到左。
不同的配置文件的區(qū)別和位置:
慣例重于配置是系統(tǒng)遵循的一個重要思想,框架內(nèi)置有一個慣例配置文件(位于ThinkPHP/Conf/convention.php),按照大多數(shù)的使用對常用參數(shù)進(jìn)行了默認(rèn)配置。所以,對于應(yīng)用的配置文件,往往只需要配置和慣例配置不同的或者新增的配置參數(shù),如果你完全采用默認(rèn)配置,甚至可以不需要定義任何配置文件
應(yīng)用配置文件也就是調(diào)用所有模塊之前都會首先加載的公共配置文件(默認(rèn)位于Application/Common/Conf/config.php)。
如果更改了公共模塊的名稱的話,公共配置文件的位置也相應(yīng)改變
如果使用了普通應(yīng)用模式之外的應(yīng)用模式的話,還可以為應(yīng)用模式(后面會有描述)單獨定義配置文件,文件命名規(guī)范是: Application/Common/Conf/config_應(yīng)用模式名稱.php(僅在運行該模式下面才會加載)。
模式配置文件是可選的
如果開啟調(diào)試模式的話,則會自動加載框架的調(diào)試配置文件(位于ThinkPHP/Conf/debug.php)和應(yīng)用調(diào)試配置文件(位于Application/Common/Conf/debug.php)
每個應(yīng)用都可以在不同的情況下設(shè)置自己的狀態(tài)(或者稱之為應(yīng)用場景),并且加載不同的配置文件。
舉個例子,你需要在公司和家里分別設(shè)置不同的數(shù)據(jù)庫測試環(huán)境。那么可以這樣處理,在公司環(huán)境中,我們在入口文件中定義:
define('APP_STATUS','office');
那么就會自動加載該狀態(tài)對應(yīng)的配置文件(位于Application/Common/Conf/office.php)。
如果我們回家后,我們修改定義為:
define('APP_STATUS','home');
那么就會自動加載該狀態(tài)對應(yīng)的配置文件(位于Application/Common/Conf/home.php)。
狀態(tài)配置文件是可選的
每個模塊會自動加載自己的配置文件(位于Application/當(dāng)前模塊名/Conf/config.php)。
如果使用了普通模式之外的其他應(yīng)用模式,你還可以為應(yīng)用模式單獨定義配置文件,命名規(guī)范為: Application/當(dāng)前模塊名/Conf/config_應(yīng)用模式名稱.php(僅在運行該模式下面才會加載)。
模塊還可以支持獨立的狀態(tài)配置文件,命名規(guī)范為: Application/當(dāng)前模塊名/Conf/應(yīng)用狀態(tài).php。
無論何種配置文件,定義了配置文件之后,都統(tǒng)一使用系統(tǒng)提供的C方法(可以借助Config單詞來幫助記憶)來讀取已有的配置。
用法:
C('參數(shù)名稱')
例如,讀取當(dāng)前的URL模式配置參數(shù):
$model = C('URL_MODEL'); // 由于配置參數(shù)不區(qū)分大小寫,因此下面的寫法是等效的 // $model = C('url_model');
但是建議使用大寫方式的規(guī)范。
注意:配置參數(shù)名稱中不能含有 “.” 和特殊字符,允許字母、數(shù)字和下劃線。
如果url_model尚未存在設(shè)置,則返回NULL。
支持在讀取的時候設(shè)置默認(rèn)值,例如:
// 如果my_config尚未設(shè)置的話,則返回default_config字符串 C('my_config',null,'default_config');
C方法也可以用于讀取二維配置:
//獲取用戶配置中的用戶類型設(shè)置 C('USER_CONFIG.USER_TYPE');
因為配置參數(shù)是全局有效的,因此C方法可以在任何地方讀取任何配置,即使某個設(shè)置參數(shù)已經(jīng)生效過期了。
到此,相信大家對“如何操作Thinkphp 框架配置操作之配置加載與讀取配置”有了更深的了解,不妨來實際操作一番吧!這里是億速云網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。