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 | message は destination で指定されたファイルに追加されます。 |
例 1. error_log の例
// データベースに接続できない場合、 // サーバログを通してエラーを通知する。 if (!Ora_Logon($username, $password)) { error_log("オラクルのデータベースが使用できません!", 0); } // Foo に失敗したら、管理者に email で通知する if (!($foo = allocate_new_foo()) { error_log("大変です! FOO に失敗しました!", 1, "operator@mydomain.com"); } // これ以外の error_log() のコール方法: error_log("大変だ!", 2, "127.0.0.1:7000"); error_log("大変だ!", 2, "loghost"); error_log("大変だ!", 3, "/var/tmp/my-errors.log");