PHP从特定位置附加到文件

PHP从特定位置附加到文件,php,pointers,append,fseek,Php,Pointers,Append,Fseek,在php中,我打开一个文本文件并附加到它。但是,我需要在文件结束前附加3个字符。 换句话说,我需要从文件中的特定位置追加/写入 有人能帮忙吗 致意 Luben如果它是一个短文本文件,并且您只能在读取内容(使用fread())后执行此操作,请使用子字符串将其最多存储到距离结尾3个字符的位置,然后将新内容附加到该文件的结尾并写入 但正如我所说的,如果这是一个常规的事情和/或大文件,这不是最好的方法。我想一想 希望这有帮助您需要打开文件进行编辑,找到所需位置,然后写入文件,例如: <?php

在php中,我打开一个文本文件并附加到它。但是,我需要在文件结束前附加3个字符。 换句话说,我需要从文件中的特定位置追加/写入

有人能帮忙吗

致意
Luben

如果它是一个短文本文件,并且您只能在读取内容(使用fread())后执行此操作,请使用子字符串将其最多存储到距离结尾3个字符的位置,然后将新内容附加到该文件的结尾并写入

但正如我所说的,如果这是一个常规的事情和/或大文件,这不是最好的方法。我想一想


希望这有帮助

您需要打开文件进行编辑,找到所需位置,然后写入文件,例如:

<?php
  $file = fopen($filename, "c");
  fseek($file, -3, SEEK_END);
  fwrite($file, "whatever you want to write");
  fclose($file);
?>

详情请参阅


希望能有所帮助。

请向我们展示您的代码。看看这里所有非法语国家的人:谢谢Alex B!我没有想到这一点,这可能是一个解决办法。但我担心文件可能会变得相当大…比如说多达1000个字符。如果我找不到其他任何东西,我将创建一个虚拟文件并进行一些测试。@Luben:1000个字符约为1kB(ascii 1字符=1字节)。把它完全读入记忆是安全的。谢谢国王!理想情况下,我想使用他上面提到的Erburat方法,但不幸的是,这不起作用。我会四处看看,如果明天不行,我会照你说的做。对不起,你错了!我在发布之前就试过了,我应该提到的。如果使用a或a+打开文件,则无论fseek()或rewind()如何,它都会附加到末尾。阅读你发布的链接底部的注释。另一件事,如果我使用w或w+它只是从一开始。还有其他建议吗?文章底部还指出,通过在“r+”中打开文件,您应该能够使用fseek()@Luben,您是对的,我没有正确阅读它。正确的模式是“c”或“c+”(或者你可以使用“r+”,正如@Neil Aitken所说:)),正如我已经编辑了响应以反映它。@Neil Aitken&&@Erburat非常感谢大家的帮助!你们都是对的。r+和c+或c+工作完美!!