a+(read/append) 与 php 中的 a(append) 有何不同

Posted

技术标签:

【中文标题】a+(read/append) 与 php 中的 a(append) 有何不同【英文标题】:How is a+(read/append) different from a(append) in php 【发布时间】:2013-08-06 02:39:10 【问题描述】:

我正在阅读(并慢慢尝试)与 php 中的 txt 文件交互的方法。 我已经尝试过追加,它将数据添加到 txt 文件的末尾 但是a+和a有什么不同

在 w3schools 中它说:

一个 附加。打开并写入文件末尾,如果文件不存在则创建一个新文件

一个+ 读取/附加。通过写入文件末尾来保留文件内容

a+ 有什么不同,它实际上“保留”了什么

【问题讨论】:

请不要用w3schools替换PHP manual a 只能写*,a+ 可以读写 EDIT:typo 谢谢哈姆扎。点好。也谢谢你....第二个人 【参考方案1】:

使用a,您只需附加到文件末尾即可。

使用a+,您也可以读取文件,因此您可以使用fseek 移动文件指针并在文件中的其他位置添加内容。

【讨论】:

所以在 (a)append 完成附加过程之后,您不能做任何其他事情而必须退出。但是在 (a+) 中,您可以在附加结束后保持连接打开并执行其他操作。对吗? 只要不关闭句柄,您就可以使用 (a) 继续追加,而使用 (a+) 您可以追加,然后移动文件光标并再次追加到其他地方,如只要你在完成之前不调用 fclose 谢谢。这就是我需要的 您不能在其他地方添加内容。所有写入都在文件末尾完成,即使使用a+ 模式也是如此。 fseek() 只影响阅读。

以上是关于a+(read/append) 与 php 中的 a(append) 有何不同的主要内容,如果未能解决你的问题,请参考以下文章

如果 int 与 php 中的字符串连接会发生啥?

PHP中的服务容器与依赖注入的思想

REST介绍与REST在PHP中的应用

php中的&表示啥呢?

在PHP中使用SPL库中的对象方法进行XML与数组的转换

PHP中的服务容器与依赖注入的思想