error_log

error_log -- エラーメッセージを送る

説明

int error_log(string message, int message_type, string [destination ], string [extra_headers ]);

エラーメッセージを Web サーバのエラーログ、 TCPポート、ファイルのいずれかに送ります。 最初のパラメータ message はログされる メッセージです。2 番目のパラメータ message_type はメッセージをどこへ送るのかを指定します。

表 1. error_log() ログタイプ

0 message は、オペレーティング・システム のシステムログのメカニズムまたはファイルのいずれかを使って PHP のシステム・ロガーに送られます。どちらが使われるかは、 error_log の設定 ディレクティブにより決定されます。
1 message は、destination パラメータで指定されたアドレスに、電子メール により送られます。このメッセージタイプの場合にのみ、 4 番目のパラメータである extra_headers が使われます。このメッセージタイプは、Mail() と同様に、同じ名前の内部関数を使用します。
2 message は、PHP のデバッグ用コネクション を通して送られます。このオプションは、 リモートデバッグが有効になっている 場合のみ使用できます。このケースでは、 destination パラメータにより、 デバッグ情報を受け取るソケットのホスト名または IP アドレス、 およびオプションでポート番号を指定します。
3 messagedestination で指定されたファイルに追加されます。

例 1. error_log() の例

  1 
  2 // データベースに接続できない場合、
  3 // サーバログを通してエラーを通知する。
  4 if (!Ora_Logon($username, $password)) {
  5     error_log("オラクルのデータベースが使用できません!", 0);
  6 }
  7 
  8 // Foo に失敗したら、管理者に email で通知する
  9 if (!($foo = allocate_new_foo()) {
 10     error_log("大変です! FOO に失敗しました!", 1,
 11               "operator@mydomain.com");
 12 }
 13 
 14 // これ以外の error_log() のコール方法:
 15 error_log("大変だ!", 2, "127.0.0.1:7000");
 16 error_log("大変だ!", 2, "loghost");
 17 error_log("大変だ!", 3, "/var/tmp/my-errors.log");
 18