note 102420 deleted from function.parse-ini-file by danbrown

From: Date: Sun, 13 Feb 2011 19:54:02 +0000
Subject: note 102420 deleted from function.parse-ini-file by danbrown
References: 1  Groups: php.notes 
Request: Send a blank email to php-notes+get-176953@lists.php.net to get a copy of this message
Note Submitter: Mendi ---- Here is a small improvement to jeremygiberson at gmail dot com function to avoid notices <? /** * Parses INI file adding extends functionality via ":base" postfix on namespace. * * @param string $filename * @return array */ function parse_ini_file_extended($filename) { // if cannot open file, return false if (!is_file($filename)) return false; $p_ini = parse_ini_file($filename, true); $config = array(); foreach($p_ini as $namespace => $properties){ $exploded = explode(':', $namespace); $name = $exploded[0]; if(isset($exploded[1])) $extends = $exploded[1]; else $extends = false; $name = trim($name); $extends = trim($extends); // create namespace if necessary if(!isset($config[$name])) $config[$name] = array(); // inherit base namespace if(isset($p_ini[$extends])){ foreach($p_ini[$extends] as $prop => $val) $config[$name][$prop] = $val; } // overwrite / set current namespace values foreach($properties as $prop => $val) $config[$name][$prop] = $val; } return $config; } ?>

« previous php.notes (#176953) next »