_settings; foreach ($var as $key) { if (!isset ($result [$key])) { return false; } $result = $result [$key]; } return $result; } function load() { trigger_error('not yet implemented', e_user_error); } } class settings_php extends settings { function load($file) { if (file_exists($file) == false) { return false; } // include file include ($file); unset ($file); // get declared variables $vars = get_defined_vars(); // add to settings array foreach ($vars as $key => $val) { if ($key == 'this') continue; $this->_settings [$key] = $val; } } } class settings_ini extends settings { function load($file) { if (file_exists($file) == false) { return false; } $this->_settings = parse_ini_file($file, true); } } class settings_yaml extends settings { function load($file) { if (file_exists($file) == false) { return false; } include ('spyc.php'); $this->_settings = spyc::yamlload($file); } } class settings_xml extends settings { function load($file) { if (file_exists($file) == false) { return false; } include ('xmllib.php'); $xml = file_get_contents($file); $data = xml_unserialize($xml); $this->_settings = $data ['settings']; } }?>
复制代码