note 102420 added to function.parse-ini-file
[email protected] Sun, 13 Feb 2011 11:36:54 -0800
| Newsgroups | php.notes |
|---|---|
| Message-ID | <[email protected]> |
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;
}
?>
----
Server IP: 69.147.83.197
Probable Submitter: 80.178.14.240
----
Manual Page -- http://www.php.net/manual/en/function.parse-ini-file.php
Edit -- https://master.php.net/note/edit/102420
Del: integrated -- https://master.php.net/note/delete/102420/integrated
Del: useless -- https://master.php.net/note/delete/102420/useless
Del: bad code -- https://master.php.net/note/delete/102420/bad+code
Del: spam -- https://master.php.net/note/delete/102420/spam
Del: non-english -- https://master.php.net/note/delete/102420/non-english
Del: in docs -- https://master.php.net/note/delete/102420/in+docs
Del: other reasons-- https://master.php.net/note/delete/102420
Reject -- https://master.php.net/note/reject/102420
Search -- https://master.php.net/manage/user-notes.php