Essa é a maneira mais eficiente de obter e remover a primeira linha do arquivo?
Eu tenho um script que, cada vez que é chamado, obtém a primeira linha de um arquivo. Sabe-se que cada linha tem exatamente o mesmo comprimento (32 caracteres alfanuméricos) e termina com "\ r \ n". Depois de obter a primeira linha, o script a remove.
Isso é feito desta maneira:
$contents = file_get_contents($file));
$first_line = substr($contents, 0, 32);
file_put_contents($file, substr($contents, 32 + 2)); //+2 because we remove also the \r\n
Obviamente funciona, mas eu queria saber se existe uma maneira mais inteligente (ou mais eficiente) de fazer isso?
Na minha solução simples, basicamenteleia e reescreva o arquivo inteiro apenas para obter e remover a primeira linha.