php从最终寻求并添加数据

时间:2014-10-25 20:49:29

标签: php

我想从文件末尾寻找第10行并写一些数据

我尝试了$file->fseek(-10, SEEK_END);,但它没有寻找只有字节

的行
$file = new SplFileObject('file.txt');
$file->seek(99);//this seeks to line 99 but I was wondering if there is a way to make it seek from end
$file->fwrite('hi there');

有人可以帮助我吗?

1 个答案:

答案 0 :(得分:0)

$file = new SplFileObject('file.txt');
$numLines = count(file('file.txt'));
$file->seek($numLines - 10);
$file->fwrite('hi there');

此代码可以让您接近所追求的目标。第二行计算文件中的行数,然后用于查找插入seek()的正确值。

我建议添加一些检查,你最终不会将负值传递给seek()。

参考file() manual