Example #1
0
function g($key, $value = null, $nullSet = false)
{
    $sp = explode('/', $key);
    $nullSet = $nullSet || !is_null($value);
    $_g = Yaf\Registry::get($sp[0]);
    $vals =& $_g;
    if (Yaf\Registry::has($sp[0]) || $nullSet) {
        $i = 1;
        while (isset($sp[$i])) {
            $pos = $sp[$i];
            if (!isset($vals[$pos])) {
                if ($nullSet) {
                    $vals[$pos] = [];
                } else {
                    return null;
                }
            } elseif (!is_array($vals[$pos]) && $nullSet) {
                $vals[$pos] = [];
            }
            $vals =& $vals[$pos];
            $i++;
        }
        if ($nullSet) {
            $vals = $value;
            return Yaf\Registry::set($sp[0], $_g);
        } else {
            return $vals;
        }
    } else {
        return null;
    }
}
Example #2
0
 /**
  * 获取ini配置
  * @param $configName 配置文件名称
  * @param $section 节点名称
  * @param $configPath 配置文件路径
  */
 public static function getConfig($configName, $section = null, $configPath = null)
 {
     if (!$configPath) {
         $configPath = APPLICATION_PATH . '/conf';
     }
     if (!$section) {
         $section = YAF\ENVIRON;
     }
     if (Yaf\Registry::has($configName . $section)) {
         return Yaf\Registry::get($configName . $section);
     }
     $config = new Yaf\Config\Ini($configPath . '/' . $configName . '.ini', $section);
     Yaf\Registry::set($configName . $section, $config);
     return $config;
 }