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; } }
/** * 获取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; }