php追加记录到文件行首的办法 -凯发k8官方网
凯发k8官方网
收集整理的这篇文章主要介绍了
php追加记录到文件行首的办法
小编觉得挺不错的,现在分享给大家,帮大家做个参考.
同事处理数据时遇到一个问题:客户要求的文件格式是第一行是统计数据,后面换行后紧跟的是明细记录。
要保证明细记录的数量与统计数据一致就必须在写完明细之后再写入统计数据,而且数据的量在百万级,所以不太可能先读到内存再汇总后一起写入。
最后找到的解决办法如下:
$offset = 50; $fp = fopen("fseek.txt", "wb");// 创建文件 flock($fp, lock_ex);// 锁定 fwrite($fp, "\n");// 写入一空行 fseek($fp, $offset);// 移动文件指针至偏移量处,相当于空出了50个字节的内存空间 // 写数据,汇总 $write_count = 0; for ($i = 0; $i < 10; $i ) {fwrite($fp, "abc\n");$write_count ; } fseek($fp, 0);// 文件指针再移到文件头 // 写入汇总记录,并用空格填充余下的内存空间 fwrite($fp, str_pad("total count:". $write_count, $offset - 1, " ", str_pad_right)."\n"); flock($fp, lock_un);// 解锁 fclose($fp);// 关闭文件转载于:https://blog.51cto.com/ustb80/1285471
总结
以上是凯发k8官方网为你收集整理的php追加记录到文件行首的办法的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇:
- 下一篇: