分享一个自各儿写的PHP CONFIG类
程序员文章站
2022-06-01 19:20:04
...
分享一个自己写的PHP CONFIG类
这个类最大的特点就是可以加载无线深度的配置项,而在配置的使用过程中也可以对某些配置项进行修改,深度不超过5级。
配置文件:configs/config.test.php
调用文件
这个类最大的特点就是可以加载无线深度的配置项,而在配置的使用过程中也可以对某些配置项进行修改,深度不超过5级。
/** * config.php * * discription * * @filename config.php * @version v1.0 * @update 2011-8-9 * @author randy.hong * @contact [email protected] * @package config */define('DS', DIRECTORY_SEPARATOR);define('PATH_CONFIG', '.'.DS.'configs');//config param key separatordefine('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
配置文件:configs/config.test.php
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);
- 最新文章
- 热门排行
声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
相关文章
相关视频
网友评论
文明上网理性发言,请遵守 新闻评论服务协议
我要评论专题推荐
全栈 170W+
主讲:Peter-Zhu 轻松幽默、简短易学,非常适合PHP学习入门
入门 80W+
主讲:灭绝师太 由浅入深、明快简洁,非常适合前端学习入门
实战 120W+
主讲:西门大官人 思路清晰、严谨规范,适合有一定web编程基础学习