Lendo linha específica de um arquivo em PHP
Estou trabalhando na leitura de um arquivo em php. Preciso ler linhas específicas do arquivo.
Eu usei este código:
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);
No entanto, eu percebi que ofseek()
pega o número de bytes e não o número da linh
PHP tem outra função que baseia seu ponteiro nos números de linh
Ou tenho que ler o arquivo desde o início todas as vezes e ter um contador até que meu número de linha desejado seja lido?
Estou procurando um algoritmo eficiente, passar de um arquivo de 500 a 1000 Kb para chegar à linha desejada parece ineficient