- ベストアンサー
最後の行だけを取り出す
fopen関数でテキストファイルを開き、 テキストファイルの最後の行だけを利用する効率のいい方法はないでしょうか。 どなたか詳しい方教えてください。 よろしくお願いします。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
シェルコマンドでファイルのリバースソートをして、それをfopen。最初に読んだレコードが最後の行、というのはだめでしょうか?先の回答にもありますが、ファイルサイズが絶対に小さければfile()コマンドで配列をリバースして[0]を取得するか、確か配列の最後の要素値を取得する関数(array_popで大丈夫?)があったかと思います。
その他の回答 (1)
- shimix
- ベストアンサー率54% (865/1590)
回答No.1
ほとんどの言語では「テキストファイル」は先頭からまとめて処理する以外の適切なハンドリング方法は用意されていません。ファイルサイズ次第ではfile()で全部読み込んでしまうなどといったこともします。 #それが負荷になるようならいっそDBに放り込む方がいいように思います。
質問者
お礼
なるほど。 ご回答ありがとうございます。
お礼
ご回答ありがとうございました。