PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。
Q&A
2回答
3065閲覧
総合スコア15
0グッド
0クリップ
投稿2014/11/11 04:27
0
PHPでファイル内の最後の行を返す方法を探しています。 fgetsだと思うのですが、具体的な使い方を見つけることができませんでした。
ログファイルに追加された最後の行を返してくれるものはないでしょうか。 (できれば文字列の形で返ってきてくれるのが一番だと思っています。) どなたかご存知の方いませんか?
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
質問へのコメント
回答2件
インターネット検索した限りではいくつか例があるのですが、大体fseekでファイル末尾に移動して処理しているようです。 1文字ずつ戻って改行文字を探したり、バッファサイズ分だけ読み取って改行文字で分割して取り出すといったことをしているようです。
投稿2014/11/12 07:53
総合スコア1356
単純に解決するなら以下のようにすれば取得できます。
lang1$file_path = "/path/to/file"; 2$file_data = file($file_path); 3$get_line = $file_data[count($file_data)-1];
lang
1$file_path = "/path/to/file"; 2$file_data = file($file_path); 3$get_line = $file_data[count($file_data)-1];
しかし、この方法はメモリにファイル全体を読み込むことになりますので、ファイルによっては問題が起こる場合があります。
今回の質問の場合、以下を使うことをお勧めします。
lang1$file_path = escapeshellarg($file_path); 2$get_line = `tail -n 1 $file_path`;
1$file_path = escapeshellarg($file_path); 2$get_line = `tail -n 1 $file_path`;
投稿2014/11/12 07:30
総合スコア71
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
まだベストアンサーが選ばれていません
アカウントをお持ちの方はログイン
15分調べてもわからないことはteratailで質問しよう!
ただいまの回答率85.29%
質問をまとめることで思考を整理して素早く解決
テンプレート機能で簡単に質問をまとめる
PHPでファイル内の最後の行を返す方法を教えてください。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。