在 PHP 中读写 INI 文件
Parse_ini_file 通常用于在 PHP 中读取 INI 文件。读取 INI 文件:
<code class="php">$ini_array = parse_ini_file("sample.ini"); print_r($ini_array);</code>
访问特定值:
<code class="php">echo $ini_array['lu_link']; echo $ini_array['footerbg'];</code>
写回 INI 文件需要自定义函数:
<code class="php">function write_php_ini($array, $file) { $res = []; 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)); }</code>
Safefilerewrite使用集群确保独占文件访问:
<code class="php">function safefilerewrite($fileName, $dataToSave) { if ($fp = fopen($fileName, 'w')) { $startTime = microtime(TRUE); do { $canWrite = flock($fp, LOCK_EX); if (!$canWrite) { usleep(round(rand(0, 100) * 1000)); } } while ((!$canWrite) && ((microtime(TRUE) - $startTime) < 5)); if ($canWrite) { fwrite($fp, $dataToSave); flock($fp, LOCK_UN); } fclose($fp); } }</code>
用法示例:
<code class="php">$ini_array = parse_ini_file("sample.ini"); $ini_array['lu_link'] = '#F00'; $ini_array['footerbg'] = '#FFF'; write_php_ini($ini_array, "sample.ini");</code>
以上是如何在 PHP 中读取、写入和修改 INI 文件?的详细内容。更多信息请关注PHP中文网其他相关文章!