php - 保存文本文件超过 8kb(80 行) fwrite php
问题描述
我正在尝试在删除第一行后重写 result.txt 文件,该文件总共有 7000 行(700 kb)大小。
只需打开文件,删除第一行,然后再次保存。
但是fwrite
函数只为我节省了 80 行(8kb)。其余行自动删除。
$outfile= "result.txt";
$o = fopen($outfile,"w");
while (!feof($handle)) {
$buffer = fgets($handle,2048);
fwrite($o,$buffer);
}
fclose($handle);
fclose($o);
rename($outfile, 'result.txt');
如何用 fwrite 写大文件?
解决方案
w
通过替换解决问题c+
现在代码看起来像这样
$outfile= "result.txt";
$o = fopen($outfile,"c+");
while (!feof($handle)) {
$buffer = fgets($handle,2048);
fwrite($o,$buffer);
}
fclose($handle);
fclose($o);
rename($outfile,$file);
推荐阅读
- mysql - MySQL 中 BIT(64) 列的奇怪行为
- jsp - request.setAttribute inside a loop
- ios - Swift - 为什么即使在分配值之后,我也会从隐式解包的可选变量中获取可选值?
- ruby-on-rails - RSpec Rails - subject + assigns as one liner?
- python-3.x - Tkinter (python3) How to insert text vertically in Text widget?
- javascript - 反应 componentsDidUpdate 与 SetState 回调
- java - 在 JAVA 中打印两个日期之间的小时、秒日期
- ruby-on-rails - 如何使用 rspec 为序列化程序编写单元测试
- php - 将 PDF 文件另存为 PDF 而不是 PHP
- spring - 同一 VPC 中两个公共 EC2 实例之间的 AWS 通信