I've been looking around the official php documentation but I'm unable to find what I'm looking for.
http://php.net/manual/en/function.parse-ini-file.php
I just want a function to edit and read the value from the php ini file, for instance,
[default_colors] sitebg = #F8F8F8 footerbg = #F8F8F8 link = #F8F8F8 url = #F8F8F8 bg = #F8F8F8 text = #F8F8F8 border = #F8F8F8 lu_link = #F8F8F8 lu_url = #F8F8F8 lu_bg = #F8F8F8 lu_text = #f505f5 lu_border = #F8F8F8
Line 1: Load the file into an array. Line 2: set the value. Next lines: Compile ini file content. Last line: write content to disk.
How to Open and Edit INI Files. It's not a common practice for people to open or edit INI files, but they can be opened and changed with any text editor. Just double-clicking it will automatically open it in the Notepad application in Windows.
You can simply use parse_ini_file
with PHP4/5.
$ini_array = parse_ini_file("sample.ini"); print_r($ini_array);
Here is the doc: http://php.net/manual/en/function.parse-ini-file.php
To write back an array of objects back to the ini file, use below as a very fast & easy solution:
function write_php_ini($array, $file) { $res = array(); foreach($array as $key => $val) { if(is_array($val)) { $res[] = "[$key]"; foreach($val as $skey => $sval) $res[] = "$skey = ".(is_numeric($sval) ? $sval : '"'.$sval.'"'); } else $res[] = "$key = ".(is_numeric($val) ? $val : '"'.$val.'"'); } safefilerewrite($file, implode("\r\n", $res)); } function safefilerewrite($fileName, $dataToSave) { if ($fp = fopen($fileName, 'w')) { $startTime = microtime(TRUE); do { $canWrite = flock($fp, LOCK_EX); // If lock not obtained sleep for 0 - 100 milliseconds, to avoid collision and CPU load if(!$canWrite) usleep(round(rand(0, 100)*1000)); } while ((!$canWrite)and((microtime(TRUE)-$startTime) < 5)); //file was locked so now we can store information if ($canWrite) { fwrite($fp, $dataToSave); flock($fp, LOCK_UN); } fclose($fp); } }
The PEAR Config_Lite package can do almost all the work (both reading and writing) for you super-easily. Check it out here: http://pear.php.net/package/Config_Lite
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With