本文實(shí)例講述了thinkPHP5.0框架獨(dú)立配置與動(dòng)態(tài)配置方法。分享給大家供大家參考,具體如下:
獨(dú)立配置文件:
新版支持配置文件分離,只需要配置extra_config_list
參數(shù)(在應(yīng)用公共配置文件中)。
例如,不使用獨(dú)立配置文件的話,數(shù)據(jù)庫配置信息應(yīng)該是在config.php中配置如下:
/* 數(shù)據(jù)庫設(shè)置 */ 'database' => [ // 數(shù)據(jù)庫類型 'type' => 'mysql', // 服務(wù)器地址 'hostname' => '127.0.0.1', // 數(shù)據(jù)庫名 'database' => 'thinkphp', // 數(shù)據(jù)庫用戶名 'username' => 'root', // 數(shù)據(jù)庫密碼 'password' => '', // 數(shù)據(jù)庫連接端口 'hostport' => '', // 數(shù)據(jù)庫連接參數(shù) 'params' => [], // 數(shù)據(jù)庫編碼默認(rèn)采用utf8 'charset' => 'utf8', // 數(shù)據(jù)庫表前綴 'prefix' => '', // 數(shù)據(jù)庫調(diào)試模式 'debug' => false, ],
如果需要使用獨(dú)立配置文件的話,則首先在config.php中添加配置:
'extra_config_list' => ['database'],
定義之后,數(shù)據(jù)庫配置就可以獨(dú)立使用database.php文件,配置內(nèi)容如下:
/* 數(shù)據(jù)庫設(shè)置 */ return [ // 數(shù)據(jù)庫類型 'type' => 'mysql', // 服務(wù)器地址 'hostname' => '127.0.0.1', // 數(shù)據(jù)庫名 'database' => 'thinkphp', // 數(shù)據(jù)庫用戶名 'username' => 'root', // 數(shù)據(jù)庫密碼 'password' => '', // 數(shù)據(jù)庫連接端口 'hostport' => '', // 數(shù)據(jù)庫連接參數(shù) 'params' => [], // 數(shù)據(jù)庫編碼默認(rèn)采用utf8 'charset' => 'utf8', // 數(shù)據(jù)庫表前綴 'prefix' => '', // 數(shù)據(jù)庫調(diào)試模式 'debug' => false, ],
如果配置了extra_config_list參數(shù),并同時(shí)在config.php和database.php文件中都配置的話,則database.php文件的配置會(huì)覆蓋config.php中的設(shè)置。
獨(dú)立配置文件的參數(shù)獲取都是二維配置方式,例如,要獲取database獨(dú)立配置文件的type參數(shù),應(yīng)該是:
Config::get('database.type');
要獲取完整的獨(dú)立配置文件的參數(shù),則使用:
Config::get('database');
系統(tǒng)默認(rèn)設(shè)置了2個(gè)獨(dú)立配置文件,包括database和validate,分別用于設(shè)置數(shù)據(jù)庫配置和驗(yàn)證規(guī)則定義。
動(dòng)態(tài)配置:
設(shè)置配置參數(shù)
使用set方法動(dòng)態(tài)設(shè)置參數(shù),例如:
Config::set('配置參數(shù)','配置值'); // 或者使用助手函數(shù) config('配置參數(shù)','配置值');
也可以批量設(shè)置,例如:
Config::set([ '配置參數(shù)1'=>'配置值', '配置參數(shù)2'=>'配置值' ]); // 或者使用助手函數(shù) config([ '配置參數(shù)1'=>'配置值', '配置參數(shù)2'=>'配置值' ]);
更多關(guān)于thinkPHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《ThinkPHP入門教程》、《thinkPHP模板操作技巧總結(jié)》、《ThinkPHP常用方法總結(jié)》、《codeigniter入門教程》、《CI(CodeIgniter)框架進(jìn)階教程》、《Zend FrameWork框架入門教程》、《smarty模板入門基礎(chǔ)教程》及《PHP模板技術(shù)總結(jié)》。
希望本文所述對(duì)大家基于ThinkPHP框架的PHP程序設(shè)計(jì)有所幫助。