Я работаю над чтением файла в 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()
берет количество байт, а не номер строки.
Есть ли в PHP другая функция, которая основывает свой указатель на номерах строк?
Или я должен каждый раз читать файл с самого начала, и иметь пока не будет прочитан нужный номер строки?
Я ищу эффективный алгоритм, перешагивание через файл размером 500-1000 Кб, чтобы добраться до нужной строки, кажется неэффективным.