Php 绕过parse_ini_文件保留字
我有以下代码(不是我自己制作的): 文件的内部:一些东西= 我想把它弄错Php 绕过parse_ini_文件保留字,php,Php,我有以下代码(不是我自己制作的): 文件的内部:一些东西= 我想把它弄错 $filename = 'server.properties'; $data = parse_ini_file($filename); $replace_with = array( 'Something' => false ); $fh = fopen($filename, 'w'); foreach ( $data as $key => $value ) { if ( ! empty($r
$filename = 'server.properties';
$data = parse_ini_file($filename);
$replace_with = array(
'Something' => false
);
$fh = fopen($filename, 'w');
foreach ( $data as $key => $value )
{
if ( ! empty($replace_with[$key]) )
$value = $replace_with[$key];
fwrite($fh, "{$key}={$value}" . PHP_EOL);
}
fclose($fh);
}
server.properties的输出应为Something=false。
但是false是php parse_ini_文件中的保留字
(注意:有一些保留字不能用作ini文件的键。这些保留字包括:null、yes、no、true、false、on、off、none。值null、no和false在“”中产生结果,yes和true在“1”中产生结果。字符?{}|&~![()^“不能在键的任何位置使用,并且在值中具有特殊含义。)
问题是我已经用它编写了很长的代码,结果证明我不能使用false或0。因此有没有办法仍然发送“false”这个词“在数组中?或者是否有一种简单的方法可以完全不同地执行此操作?为什么不编写字符串
'false'
,而不是预定义的常量false
?反正它都是作为字符串编写的。@BLaZuRE已经尝试了'false'但不起作用。请解释“不起作用”。如果打印{$key}={$value}的值
,你得到了什么?你确定你做了'false'
,而不是'false'
?@BLaZuRE如果你的意思是'Something'=>'false',那就是我所做和尝试的。把如果($value==false)$value=“false”
放在fwrite