我正在读取
PHP中的文件.
我需要阅读该文件的特定行.
我需要阅读该文件的特定行.
我用过这段代码:
fseek($file_handle,$start); while (!feof($file_handle)) { ///Get and read the line of the file pointed at. $line = fgets($file_handle); $lineArray .= $line."LINE_SEPARATOR"; processLine($lineArray,$linecount,$logger,$xmlReply); $counter++; } fclose($file_handle);
但是我意识到fseek()接受的是字节数而不是行号.
或者我每次都必须从头开始阅读文件,并且有一个
计数器直到读取我想要的行号?
我正在寻找一种有效的算法,步进超过500-1000 Kb文件到达所需的线似乎效率低下.
使用
原文链接:https://www.f2er.com/php/133554.htmlSplFileObject::seek
$file = new SplFileObject('yourfile.txt'); $file->seek(123); // seek to line 124 (0-based)