本文實例講述了thinkPHP5.0框架配置格式、加載解析與讀取方法。分享給大家供大家參考,具體如下:
ThinkPHP支持多種格式的配置格式,但最終都是解析為PHP數組的方式。
PHP數組定義
返回PHP數組的方式是默認的配置定義格式,例如:
//項目配置文件return [ // 默認模塊名 'default_module' => 'index', // 默認控制器名 'default_controller' => 'Index', // 默認操作名 'default_action' => 'index', //更多配置參數 //...];
配置參數名不區分大小寫(因為無論大小寫定義都會轉換成小寫),新版的建議是使用小寫定義配置參數的規范。
還可以在配置文件中可以使用二維數組來配置更多的信息,例如:
//項目配置文件return [ 'cache' => [ 'type' => 'File', 'path' => CACHE_PATH, 'prefix' => '', 'expire' => 0, ],];
其他配置格式支持
除了使用原生PHP數組之外,還可以使用json/xml/ini等其他格式支持(通過驅動的方式擴展)。
例如,我們可以使用下面的方式讀取json配置文件:
Config::parse(APP_PATH.'config/config.json');
ini格式配置示例:
	DEFAULT_MODULE=Index ;默認模塊
	URL_MODEL=2 ;URL模式
	SESSION_AUTO_START=on ;是否開啟session
xml格式配置示例:
<config><default_module>Index</default_module><url_model>2</url_model><session_auto_start>1</session_auto_start></config>
json格式配置示例:
{"default_module":"Index","url_model":2,"session_auto_start":True}二級配置
配置參數支持二級,例如,下面是一個二級配置的設置和讀取示例:
$config = [ 'user' => ['type'=>1,'name'=>'thinkphp'], 'db' => ['type'=>'mysql','user'=>'root','password'=>''],];// 設置配置參數Config::set($config);// 讀取二級配置參數echo Config::get('user.type');// 或者使用助手函數echo config('user.type');
系統不支持二級以上的配置參數讀取,需要手動分步驟讀取。
有作用域的情況下,仍然支持二級配置的操作。
如果采用其他格式的配置文件的話,二級配置定義方式如下(以ini和xml為例):
[user]type=1name=thinkphp [db]type=mysqluser=rotpassword=''
標準的xml格式文件定義:
<config><user><type>1</type><name>thinkphp</name></user><db><type>mysql</type><user>root</user><password></password></db></config>
set方法也支持二級配置,例如:
Config::set([ 'type' => 'file', 'prefix' => 'think'],'cache');
讀取配置參數
設置完配置參數后,就可以使用get方法讀取配置了,例如:
echo Config::get('配置參數1');系統為get方法定義了一個助手config,以上可以簡化為:
echo config('配置參數1');讀取所有的配置參數:
dump(Config::get());// 或者 dump(config());
或者你需要判斷是否存在某個設置參數:
Config::has('配置參數2');如果需要讀取二級配置,可以使用:
echo Config::get('配置參數.二級參數');希望本文所述對大家基于ThinkPHP框架的PHP程序設計有所幫助。
新聞熱點
疑難解答
圖片精選