我是PHP的新手,我正在练习file_put_contents()函数,我想知道这是否可行。
我有一个包含以下副本的文本文件:
--start placed content --
(content goes here)
--end placed content --
是否可以使用file_put_contents将内容放在--start - 和--end--行之间。我已经尝试了FILE_APPEND标志,但它始终将内容放在--end--行之后。或者我是否需要先使用file_get_contents?
非常感谢,非常感谢任何帮助。
答案 0 :(得分:3)
没有。需要读入文件并将数据放在正确的位置。您可以使用file_get_contents()读取字符串,然后使用str_replace或preg_replace将标记之间的部分替换为您想要的部分,然后再使用file_put_contents将其写回。
答案 1 :(得分:2)
你总是可以这样做:
$data = '--start placed content --'.PHP_EOL.$data.'--end placed content --'.PHP_EOL;
file_put_contents($file,$data);
答案 2 :(得分:2)
您可以将文件检索为一个行数组,然后将行插入所需的行,并将其全部写回。
nathan在此网站上的类似示例:Write to specific line in PHP