3

假设我在文件中有这些数据(externalfile.txt)

#1#First#/1#
#2#Something#/2#

#end#

我想在#/2#和之间写文字#end#,怎么做?

4

2 回答 2

3

不知道这是否是正确的方法,但你可以看看

$newval='new text';
$file_contents = file_get_contents('externalfile.txt');
file_put_contents('externalfile.txt', preg_replace("/#\/2#/", "#/2#\n$newval\n", $file_contents));

无论如何,它有效。

于 2012-08-26T09:23:34.700 回答
1

此 PHP 代码在#end#字符串最后一次出现之前插入一个新文本:

$str = file_get_contents('file.txt');
$splitted = explode('#end#',$str);
$pos = count($splitted)-2;
$splitted[$pos] .= 'new text';
$str = implode('#end#',$splitted);
echo $str;
于 2012-08-26T09:21:18.223 回答