zhphp framework (七) 配置文件加载与读取以及动态写、读配置文件
2015-12-11 13:29
751 查看
<?php /** * Created by JetBrains PhpStorm. * User: 张华 * Date: 14-3-8 * Time: 下午12:21 * QQ: 746502560@qq.com * To change this template use File | Settings | File Templates. */ defined('IN_ZHPHP')?NULL:die('attempts to hack the system'); final class config{ public static $confVal=array(); public static $zhConf=array(); private function __construct() {}#防止被实例化 /** * 预加载配置文件 */ public static function loadConfig(){ $configFile1=read_folder_directory(ROOT_PATH.'config/'); $configFile2=read_folder_directory(APP_PATH.'config/'); $c1=array();$c2=array();$c3=array(); foreach ($configFile2 as $file){ $c1[]= include_once APP_PATH.'config/'.$file; } foreach ($configFile1 as $file){ $c2[]= include_once ROOT_PATH.'config/'.$file; } $c3=array_merge_recursive($c2,$c1); self::$confVal=array3DToArray2D($c3); unset($configFile1,$configFile2,$c1,$c2,$c3); } /** * 写配置文件 * @param type $key * @param type $value */ public static function writeConfig($key,$value){ if(array_key_exists($key, self::$confVal) === false){ self::$confVal[$key]=$value; } } /** *读取配置文件 * @param type $key * @param type $twoKey * @return type */ public static function readConfig($key,$twoKey=null){ if(self::isConfig($key,$twoKey)){ if(array_key_exists($key, self::$confVal)){ return (is_null($twoKey))?self::$confVal[$key]:self::$confVal[$key][$twoKey]; } foreach (self::$confVal as $array){ if(array_key_exists($key,$array)){ return (is_null($twoKey))?$array[$key]:$array[$key][$twoKey]; break; } } } return false; } /** * 判断判断项目是否存在 */ public static function isConfig($key,$twoKey){ if(array_key_exists($key, self::$confVal) && is_null($twoKey)){ return true; }else if(array_key_exists($key, self::$confVal) && ! is_null($twoKey)){ if(array_key_exists($twoKey,self::$confVal[$key])){ return true; } }else{ return false; } } /** * 查看配置文件项目 */ public static function debugConfig(){ echo '<pre>'; print_r(self::$confVal); echo '</pre>'; die(); } }
相关文章推荐
- 基于ace后台管理系统模板--CMS(Thinkphp框架)的筹划
- zhphp frmaework (六) help帮助函数包,以及系统应用函数包
- zhphp framework (五) 框架加载类
- zhphp framework (四)动态加载应用程序产量,方便任何程序代码重构
- zhphp framework (三) 框架工作流程
- ThinkPHP
- 夺命雷公狗---PHP---玩转安卓2之扫码进行登录原理
- php laravel 帧 该文件上传
- php创建空对象
- Gearmand和PECL extension for Gearman版本不兼容的问题
- php扩展名获取函数
- php利用pdo进行mysql的事务处理机制
- phpstorm移除已创建的项目
- PHP漏洞全解(六)-Session劫持
- PHP漏洞全解(四)-SQL注入攻击
- php通过curl模拟功能总结
- php 自带过滤和转义函数
- PHP漏洞全解(三)-xss跨站脚本攻击
- PHP漏洞全解(二)-客户端脚本植入
- iOS程序猿如何快速掌握 PHP,化身"全栈攻城狮"?