PHPでエラーログ等のログファイルから指定した行数を表示させる方法
2024/05/22
エラーログを最新分から指定行数表示させる
プログラムがあって、どういった作りになっているのか
気になったのでメモ。
サンプル
https://taitan916.info/sample/logcheck/
ソース
<html lang="ja"> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <head> </head> <body> <form action="" method="GET"> <table width="100%"> <tr> <td class="title"> 取得行数 </td> <td class="left"> <input type="text" name="rows" size="20" />行 <input type="submit" value="表示する" /> </td> </tr> </table> </form> <?php $log_file = "test.log"; $log_data = file($log_file); //配列に格納 $rows = isset($_GET['rows']) ? max(0,intval($_GET['rows'])) : 5; //最大表示行数 if ($rows >= count($log_data)) { //設定した表示行数が、全体行数より大きい場合 $rows = count($log_data); //表示行数は全体表示行数とする } $n = count($log_data) - $rows; //全体行数 - 表示行数を取得 for ($i = count($log_data); $i >= $n; $i--) { //最新分から古い方へ$nまでデクリメント。 echo $log_data[$i] . "<br />\n"; //表示していく } ?> </body> </html>
関連記事
-
-
PHPにて「php-ulid」ライブラリを用いてULIDを生成する方法
先日MySQLにてUUIDを発行するメモを書いたがUUID v1だと生成時間によ ...
-
-
PHPでのファイル関係
ファイルを呼び出したり書き込んだりとかしばしば行うが、 未だに調べることが多いの ...
-
-
PHPで配列に特定の値が入っているか検索
PHPで配列に特定の値が入っているか検索して trueかfalseを返したい、と ...
-
-
PHP7.4でAPCuとOPcacheをインストールする方法
先日本ブログのサーバをCentOS6系から7系に移行し、その際にMySQLのバー ...
-
-
eval関数について
ちょくちょく見ることがあったeval関数について、 なんとなく分かってきたのでメ ...