Autor | Zpráva | ||
---|---|---|---|
Linux Profil * |
#1 · Zasláno: 18. 2. 2011, 11:09:55
Hledal jsem nějakou funkci, která by převedla INI do PHP Array, nenašel jsem nic, co by mi vyhovovalo, tak jsem fci udělal, takže kdo potřebuje:
function INItoArray( $in ) { $out = array(); $in = explode("\n",$in); $last = ""; if(count($in)<2) return false; foreach( $in as $key => $line ) { unset($match); // #coment if( preg_match("/(#[[:print:]]+)/",$line,$match) ) { $line = str_replace($match[1],"",$line); } // [neco] if( preg_match("/\[([a-zA-Z0-9]+)\]/",$line,$match) ) { $out[trim($match[1])] = array(); $last = trim($match[1]); } if( preg_match("/([a-zA-Z0-9]+)[[:blank:]]*=[[:blank:]]*([[:alnum:][:print:]]+)/",$line,$match) ) { if(count($out)==0) { $out["undefined"][trim($match[1])] = trim($match[2]); } else { $out[$last][trim($match[1])] = trim($match[2]); } } } return $out; } |
||
Chro Profil |
#2 · Zasláno: 18. 2. 2011, 11:26:08
Co tyto funkce, nevyhovují?
parse_ini_string(); parse_ini_file(); |
||
Linux Profil * |
#3 · Zasláno: 18. 2. 2011, 11:36:22
Když jsem načítal nějaké herní INI, komentářovej prefix byl #, tak mi to dělalo nějakou neplechu, ale je možný že to bylo verzí, nicméně není to naškodu.
|
||
DoubleThink Profil * |
#4 · Zasláno: 18. 2. 2011, 13:40:32
Mřížkový komentář v INI nemá co dělat.
|
||
Časová prodleva: 13 let
|
0