file_put_contents,在行之间放置内容

时间:2011-11-21 19:02:55

标签: php

我是PHP的新手,我正在练习file_put_contents()函数,我想知道这是否可行。

我有一个包含以下副本的文本文件:

--start placed content --

(content goes here)

--end placed content --

是否可以使用file_put_contents将内容放在--start - 和--end--行之间。我已经尝试了FILE_APPEND标志,但它始终将内容放在--end--行之后。或者我是否需要先使用file_get_contents?

非常感谢,非常感谢任何帮助。

3 个答案:

答案 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