gpt4 book ai didi

php - 如何使用 PHP 读取和写入 ini 文件

转载 作者:IT王子 更新时间:2023-10-29 01:11:52 27 4
gpt4 key购买 nike

我一直在寻找官方的 php 文档,但找不到我要找的东西。

http://php.net/manual/en/function.parse-ini-file.php

我只想要一个函数来编辑和读取 php ini 文件中的值,例如,

[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
  1. 如何读取属于“lu_link”或“footerbg”的值?
  2. 如何为这些地方编写新值?

最佳答案

您可以简单地将 parse_ini_file 与 PHP4/5 一起使用。

$ini_array = parse_ini_file("sample.ini");
print_r($ini_array);

这是文档:http://php.net/manual/en/function.parse-ini-file.php

要将对象数组写回 ini 文件,请使用以下作为一种非常快速和简单的解决方案:

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);
}

}

关于php - 如何使用 PHP 读取和写入 ini 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5695145/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com