thinkphp函数学习(3): C函数详解
2024-08-29 14:56:37
function C($name=null, $value=null,$default=null) {
static $_config = array();
// 无参数时获取所有
if (empty($name)) {
return $_config;
}
// 优先执行设置获取或赋值
if (is_string($name)) {
if (!strpos($name, '.')) {
$name = strtolower($name);
if (is_null($value))
return isset($_config[$name]) ? $_config[$name] : $default;
$_config[$name] = $value;
return;
}
// 二维数组设置和获取支持
$name = explode('.', $name);
$name[0] = strtolower($name[0]);
if (is_null($value))
return isset($_config[$name[0]][$name[1]]) ? $_config[$name[0]][$name[1]] : $default;
$_config[$name[0]][$name[1]] = $value;
return;
}
// 批量设置
if (is_array($name)){
$_config = array_merge($_config, array_change_key_case($name));
return;
}
return null; // 避免非法参数
}
这是thinkphp中function.php里面定义的函数。
详解:
此函数功能有:
1、获得$_config数组,其中保存着配置信息(静态变量只初始化一次,函数执行完毕,值不会消失)
print_r(C()); // 这样能获得所有已读取或设置的配置信息
2、读取配置的值
echo C('key');
echo C('key.subkey');
//二维数组的读取,对应的配置文件结构为
return array(
'key'=>array('subkey','value'),
)
3、动态添加配置
C('key','value');
C('key.subkey','value');
C函数实现的关键点:
1、static $_config = array(); 把$_config设置为静态变量,使其能够存储值
2、配置文件的写法。
return $arr = array(
'key1'=>'value';
'key2'=>array('subkey','value'),
);
/*
注意开头的return,当include这个文件时,返回的就是这个return返回的值
*/
启发:
开发项目的时候可以借鉴,这个函数处理系统的配置还是很好用的。
最新文章
- 微软“.Net社区虚拟大会”dotnetConf2015:关键词:.NET 创新、开源、跨平台
- linux部署war包方案
- 【转】mac/linux终端光标的快捷键操作
- VS快捷键的简单总结
- jQuerySchool
- iOS 下拉菜单 FFDropDownMenu自定义下拉菜单样式实战-b
- SaaS系列介绍之九: SaaS营销模式分析
- 图片上传并显示(兼容ie),图片大小判断
- odi增量更新策略
- Get Cordova Ready for Grunt and CoffeeScript
- 销量预测和用户行为的分析--基于ERP的交易数据
- 使用ip开头的工具,而不是只会ifconfig
- FORTH 虚拟机内部结构
- F(x) 数位dp
- halcon 创建region的最大尺寸问题
- PythonStudy——名称空间 Name space
- flask-日料网站搭建-后台登录
- BZOJ 4706: B君的多边形 找规律
- SPOJ IM - Intergalactic Map - [拆点最大流]
- PyQt4(简单界面)
热门文章
- PowerShell脚本授权最佳实践
- Jenkins拾遗--第一篇(安装Jenkins)
- apache的/etc/httpd/conf/httpd.conf和/usr/local/apache2/conf/httpd.conf区别
- MySQL隐式转换测试
- appium+python的APP自动化(1)
- Python——初识Python
- hadoop2.5.2学习及实践笔记(一)—— 伪分布式学习环境搭建
- mogodb gui
- 路由器配置PPP协议 CHAP验证 PAP验证
- Bsd内核选项总结