时间:2021-07-01 10:21:17 帮助过:17人阅读
/**
* config.php
*
* discription
*
* @filename config.php
* @version v1.0
* @update 2011-8-9
* @author randy.hong
* @contact homingway@163.com
* @package config
*/
define('DS', DIRECTORY_SEPARATOR);
define('PATH_CONFIG', '.'.DS.'configs');
//config param key separator
define('CONFIG_SEPARATOR', '.');
class CONFIG{
protected static $_configarray = array();
/**
* 获取一个配置
* @param string $key
* @return mixed
*/
public static function get($key=''){
//inlegal param,return false
if(!$key){
return false;
}
//without separator in param, return the whole config file
if(strpos($key,CONFIG_SEPARATOR)===false){
if(!isset(self::$_configarray[$key])){
$cfg_file = PATH_CONFIG.DS.'config.'.$key.'.php';
if(file_exists($cfg_file)){
self::$_configarray[$key] = include_once($cfg_file);
}
}
return self::$_configarray[$key];
} else {
$param = explode(CONFIG_SEPARATOR,$key);
if(!isset(self::$_configarray[$param[0]])){
$cfg_file = PATH_CONFIG.DS.'config.'.$param[0].'.php';
if(file_exists($cfg_file)){
self::$_configarray[$param[0]] = include_once($cfg_file);
}
}
$tmp_config = null;
for($i=1;$i
return array( 'test1' => array( 'test2' => array( 'test3' => array( 'test4' => array( 'test5' => 5555, ), ), ), ) );
include_once('config.php');
$config = CONFIG::get('test.test1');
print_r($config);
CONFIG::set('test.test1',222);
$config = CONFIG::get('test.test1');
print_r($config);
1 楼 lifei6671 2011-08-13
这个好像和discuz的配置文件有异曲同工的效果!