使用
parse_ini_file(file,process_sections) file 亮余早贺 必需。规定要检查的 ini 文件。
process_sections
可选。如果设置为 true,则返回一个多维数组,包括了配置文件中每一节的名称和设置。默认是敬睁滚 false
参考地址:http://php.net/manual/en/function.parse-ini-file.php
您看这样符合您的要求吗?
<?php// 设置ini文件名
$ini[0]='1.ini'
$ini[1]='2.ini'
// 检查第2个ini文件是否存在,如不存在,则创建之
if(!file_exists($ini[1])) {
$file=fopen($ini[1],"橡斗a")
fwrite($file, '[config]')
fclose($file)
}
// 获取值
$values[0]=parse_ini_file($ini[0])
$values[1]=parse_ini_file($ini[1])
// 获取键
$keys[0]=array_keys($values[0])
$keys[1]=array_keys($values[1])
// 写入第2个ini文件
if(isset($_GET['section'])) {
foreach($keys[0] as $key) {
// 如果在第1个ini文件中存在此键,
// 而在第2个ini文件中不存在,则进行写入
// 这是为了避免写入重复或多余的键
if($_GET['section']===$key AND !isset($values[1][$key])) {
file_put_contents($ini[1], "\n$key=0", FILE_APPEND)
}
}
}
// 重新获取第2个ini文件的值
$values[1]=parse_ini_file($ini[1])
// 重新获取第2个ini文件的键
$keys[1]=array_keys($values[1])
// 开始输出为表格
echo '<table style="border-collapse:collapse border:1px solid #000000">'
// 遍历所有键
foreach($keys[0] as $key) {
// 如果值为OK,而且在第二个ini文件中不存在,则显示ok
if($values[0][$key]==='OK' AND !isset($values[1][$key])) {
echo '<tr style="border:1px solid #000000">'
echo '<td style="width:64px border:1px solid #000000">',$key,'</td>'
echo '<td style="width:64px border:1px solid #000000"><a href="?section=',$key,'" style="color:#000000 text-decoration: none">ok</a></td>'
echo '</tr>'
}
// 如果值为OK,而且在第二个ini文件中存在,则显示no
梁租磨 elseif($values[0][$key]==='OK' AND isset($values[1][$key])) {
echo '<tr style="border:1px solid #000000">'
echo '<td style="width:64px border:1px solid #000000">',$key,'</td>'
echo '<td style="width:64px border:1px solid #000000">no</td>'
echo '</tr>'
}
}
echo '</table>'
// 表格输出完毕
// 注销所有变量
unset($ini, $file, $values, $keys, $key)
?>
PHP中,写入文件必须要有写入权限的。但一般来说是没问题的。如果报错,就必须要配置相应的写入权限才行。
希望对型敬您有帮助,谢谢!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)