• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:php select 外部ファイル読み込み)

PHPで外部ファイルを読み込む方法とアクセスログの表示

このQ&Aのポイント
  • PHPで外部ファイルを読み込む方法と、アクセスログの表示について教えてください。
  • log.phpにて、20110210.logの中身を表示させたいと思っています。毎日logファイルが作成され、日付.logという形式で保存されます。log.phpで選択した日付のアクセスログを表示する方法を教えてください。
  • また、logファイルが増えすぎる場合は、月ごとの表示にすることは可能でしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
  • duron
  • ベストアンサー率77% (73/94)
回答No.2

以下の内容に変更してみてください。 <!-- logファイル表示部 ---> <?php // ログ表示モード時のみ処理を行う if($mode=="viewlog") { // ログファイルの存在チェック if (is_file($logdir."/".$logfile.".log")) { // ログファイルの読み取り $textarray=file($logdir."/".$logfile.".log"); // 最後の行番号の桁数を取得 $num = strlen((string)count($textarray)); // 行番号カウント初期化 $count=0; // 一行ずつ出力 foreach($textarray as $key => $text) { // 行番号カウントアップ $count++; // 出力する行番号を前0パディング $rownum = sprintf('%0'.$num.'d', $count); // <span>で囲んで出力 print("<span style=\"white-space:pre;\">".$rownum.": ".htmlspecialchars($text)."</span>\n<br>\n"); } } else { print("ログファイルが見つかりませんでした。"); } } ?> </body> </html>

h199613
質問者

お礼

度重なる質問に対し、ご回答有難う御座います。 できました。 全然検討違いでした。 本当に有難う御座います。

すると、全ての回答が全文表示されます。

その他の回答 (1)

  • duron
  • ベストアンサー率77% (73/94)
回答No.1

ちょっと書いてみました。 多分要望に近いものができたのではないかと思います。 あまり検証してないので細かいところをちょこちょこ 修正する必要があるかもしれません。 ソース内にコメントをそれなりには入れておきました。 ソースは長くなったので参考URLから落としてください。

参考URL:
http://www.geocities.jp/duron_one/
h199613
質問者

お礼

お忙しい中、ご回答有難う御座います。 できました!! 本当に有難う御座います。 一つご質問がありまして、何度か修正しつつ試したのですが、なかなかできません・・・ 一番最後logファイルの中身を表示する print(htmlspecialchars($text)); ですが、現在ですと、preで囲っているため、リスト風に表示されていますが、こちらをdivでくくると一行表示になってしまいます。(当たり前なんですが・・・) これをdivで囲っても一行表示ではなくリスト風にして、なおかつ行の頭に番号をつけたいのです。 例 0 アクセスしました。 1 ログインしました。 2 ログアウトしました。 このような感じです。 下記を試してみたのですが、「アクセスしました。」とかのコメントがファイル名になってしまいます。 お分かりでしたらご教示いただけますでしょうか? foreach($filenamelist as $lognum => $text) { echo "<span>" . $lognum . "</span>\n"; echo "<span>" . htmlspecialchars($text) . "</span>\n"; } ご質問ばかりで申し訳御座いませんが、宜しくお願いいたします。

すると、全ての回答が全文表示されます。

関連するQ&A