要是数据库增删改查,简单多了。要是替换某些文字,我也会了。但是把把整篇txt文件 打开,然后修改保存,测试一直失败。大神帮看看代码。
//这是,可以把Hello替换成Hi。
<?php
$data = file_get_contents('/etc/haproxy/welcome.cfg');
$data_new = str_replace("Hello", "Hi", $data);
$fp = fopen('/etc/haproxy/welcome.cfg', 'r+');
fwrite($fp, $data_new);
fclose($fp);
?>
//这是错误,根本一开始都不能执行。
<?php
$1="Hello";
$2="Hi";
$data = file_get_contents('/etc/haproxy/welcome.cfg');
$data_new = str_replace("$1", "$2", $data);
$fp = fopen('/etc/haproxy/welcome.cfg', 'r+');
fwrite($fp, $data_new);
fclose($fp);
?>
如下代码测试结果正确:
<?php
$oldText = "hello";
$newText = "hi";
$str=file_get_contents('welcome.cfg');
$str=str_replace("$oldText", "$newText",$str);
file_put_contents('welcome.cfg', $str);
?>
注意两点:
1 welcome.cfg文件和.php文件放在同一个目录下。
2 检查welcome.cfg文件属性 不能为只读 。
$fp = fopen('/etc/haproxy/welcome.cfg', 'r+');这行代码是打开一个只读的句柄不能进行fwrite($fp, $data_new);的操作吧。可以直接用file_put_contents();zhege 函数的