error_log

(PHP 3, PHP 4 , PHP 5)

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 で指定されたファイルに追加されます。

警告

TCP/IP経由でのリモートデバッグは、PHP 3の機能であり、PHP 4では利 用できません。

例 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");