KumbiaPHP beta2-dev
Framework PHP en español
|
00001 <?php 00027 final class Config 00028 { 00034 protected static $_vars = array(); 00041 public static function get($var) 00042 { 00043 $namespaces = explode('.', $var); 00044 switch(count($namespaces)) { 00045 case 3: 00046 if(isset(self::$_vars[$namespaces[0]][$namespaces[1]][$namespaces[2]])) { 00047 return self::$_vars[$namespaces[0]][$namespaces[1]][$namespaces[2]]; 00048 } 00049 break; 00050 case 2: 00051 if(isset(self::$_vars[$namespaces[0]][$namespaces[1]])) { 00052 return self::$_vars[$namespaces[0]][$namespaces[1]]; 00053 } 00054 break; 00055 case 1: 00056 if(isset(self::$_vars[$namespaces[0]])) { 00057 return self::$_vars[$namespaces[0]]; 00058 } 00059 break; 00060 } 00061 return NULL; 00062 } 00069 public static function set($var, $value) 00070 { 00071 $namespaces = explode('.', $var); 00072 switch(count($namespaces)) { 00073 case 3: 00074 self::$_vars[$namespaces[0]][$namespaces[1]][$namespaces[2]] = $value; 00075 break; 00076 case 2: 00077 self::$_vars[$namespaces[0]][$namespaces[1]] = $value; 00078 break; 00079 case 1: 00080 self::$_vars[$namespaces[0]] = $value; 00081 break; 00082 } 00083 } 00091 public static function & read($file, $force = FALSE) 00092 { 00093 if(isset(self::$_vars[$file]) && !$force) { 00094 return self::$_vars[$file]; 00095 } 00096 00097 self::$_vars[$file] = parse_ini_file(APP_PATH . "config/$file.ini", TRUE); 00098 return self::$_vars[$file]; 00099 } 00100 }