PHP class for reading configuration files. php reads ini, yaml, and xml configuration file information.
- /**
- * Function: Read the configuration file.
- * Edit: bbs.it-home.org
- * Last modification:
- */
- Class Settings {
- Var $ _ settings = array ();
-
- Function get ($ var ){
- $ Var = explode ('.', $ var );
- $ Result = $ this-> _ 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 = 'eas ')
- 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'];
- }
- }
- ?>
|