ѡ̳

标题: thinkphp公共函数之C函数 [打印本页]

作者: admin    时间: 2017-11-12 19:01
标题: thinkphp公共函数之C函数
源码

  1. /**
  2. * 获取和设置配置参数 支持批量定义
  3. * @param string|array $name 配置变量
  4. * @param mixed $value 配置值
  5. * @param mixed $default 默认值
  6. * @return mixed
  7. */
  8. function C($name=null, $value=null,$default=null) {
  9.     static $_config = array();
  10.     // 无参数时获取所有
  11.     if (empty($name)) {
  12.         return $_config;
  13.     }
  14.     // 优先执行设置获取或赋值
  15.     if (is_string($name)) {
  16.         if (!strpos($name, '.')) {
  17.             $name = strtoupper($name);
  18.             if (is_null($value))
  19.                 return isset($_config[$name]) ? $_config[$name] : $default;
  20.             $_config[$name] = $value;
  21.             return null;
  22.         }
  23.         // 二维数组设置和获取支持
  24.         $name = explode('.', $name);
  25.         $name[0]   =  strtoupper($name[0]);
  26.         if (is_null($value))
  27.             return isset($_config[$name[0]][$name[1]]) ? $_config[$name[0]][$name[1]] : $default;
  28.         $_config[$name[0]][$name[1]] = $value;
  29.         return null;
  30.     }
  31.     // 批量设置
  32.     if (is_array($name)){
  33.         $_config = array_merge($_config, array_change_key_case($name,CASE_UPPER));
  34.         return null;
  35.     }
  36.     return null; // 避免非法参数
  37. }
复制代码







欢迎光临 ѡ̳ (http://www.sunminxuan.cn/bbs/) Powered by Discuz! X3.4