當前位置:編程學習大全網 - 源碼下載 - php的cms系統或者其他系統,後臺配置項,是如何調用的?

php的cms系統或者其他系統,後臺配置項,是如何調用的?

這些配置項壹般都是寫到壹個專門的配置文件當中的,例如:

phpcms是將所有的配置文件放置到了configs目錄當中,目錄當中又寫了database.php(數據庫配置項),system.php(系統配置項)等等

配置項在這些文件中直接寫成了壹個數組,使用的時候寫壹個獲取配置項的函數get_config('database'),這樣直接是把database.php給include進來了

更改配置項的時候是file_get_contents,然後匹配替換相關配置就好了。

/**

?*?設置config文件

?*?@param?$config?配屬信息

?*?@param?$filename?要配置的文件名稱

?*/

function?set_config($config,?$filename="system")?{

$configfile?=?CACHE_PATH.'configs'.DIRECTORY_SEPARATOR.$filename.'.php';

if(!is_writable($configfile))?showmessage('Please?chmod?'.$configfile.'?to?0777?!');

$pattern?=?$replacement?=?array();

foreach($config?as?$k=>$v)?{

if(in_array($k,array('js_path','css_path','img_path','attachment_stat','admin_log','gzip','errorlog','phpsso','phpsso_appid','phpsso_api_url','phpsso_auth_key','phpsso_version','connect_enable',?'upload_url','sina_akey',?'sina_skey',?'snda_enable',?'snda_status',?'snda_akey',?'snda_skey',?'qq_akey',?'qq_skey','qq_appid','qq_appkey','qq_callback','admin_url')))?{

$v?=?trim($v);

$configs[$k]?=?$v;

$pattern[$k]?=?"/'".$k."'\s*=>\s*([']?)[^']*([']?)(\s*),/is";

$replacement[$k]?=?"'".$k."'?=>?\${1}".$v."\${2}\${3},";

}

}

$str?=?file_get_contents($configfile);

$str?=?preg_replace($pattern,?$replacement,?$str);

return?pc_base::load_config('system','lock_ex')file_put_contents($configfile,?$str,?LOCK_EX)?:?file_put_contents($configfile,?$str);

}

  • 上一篇:北京小規模景點推薦景點少的地方。
  • 下一篇:網址導航哪個好?
  • copyright 2024編程學習大全網