定義されたエラー処理ルーチンにエラーメッセージを送信する

# error_log

(PHP 4, PHP 5, PHP 7, PHP 8)

error_log — 定義されたエラー処理ルーチンにエラーメッセージを送信する

### 説明

function error_log(
string `$message`,
int `$message_type` = 0,
?string `$destination` = `null`,
?string `$additional_headers` = `null`
): bool

エラーメッセージを Web サーバーのエラーログあるいはファイルに送ります。

### パラメータ

`message`

  ログに記録されるエラーメッセージ。

`message_type`

  メッセージをどこに送るのかを指定します。以下の中から指定できます。

  error_log() ログタイプ
  0 | `message` は PHP のシステムロガーに送られ、 設定ディレクティブ error_log の値に応じて、 オペレーティングシステムのシステムログ機構を使って保存されるか、 ファイルに保存されるかが決まります。 これがデフォルトのオプションです。
  1 | `message` は、`destination` パラメータで指定されたアドレスに、電子メール により送られます。このメッセージタイプの場合にのみ、 4 番目のパラメータである `additional_headers` が使われます。
  2 | このオプションは存在しません。
  3 | `message` は `destination` で指定されたファイルに追加されます。 明示的に指定しない限り、`message` の 最後には改行文字は追加されません。
  4 | `message` は、直接 SAPI のログ出力ハンドラに送信されます。

`destination`

  メッセージの送信先。その設定は、上で説明している `message_type` パラメータの値によります。

`additional_headers`

  追加のヘッダ。`message_type` パラメータが `1` に設定される場合に利用されます。 このメッセージタイプは、mail() と同様に 内部関数を利用します。

### 戻り値

成功した場合に `true` を、失敗した場合に `false` を返します。 `message_type` が0の場合、 エラーがロギング出来たかそうでないかに関わらず、この関数は常に `true` を返します。

### 変更履歴

バージョン | 説明
--- | ---
8.0.0 | `destination` と `additional_headers` は、nullable になりました。

### 例

例1 error_log() の例

    <?php
    // データベースに接続できない場合、
    // サーバーログを通してエラーを通知する。
    if (!Ora_Logon($username, $password)) {
        error_log("オラクルのデータベースが使用できません!", 0);
    }

    // FOO に失敗したら、管理者に email で通知する
    if (!($foo = allocate_new_foo())) {
        error_log("大変です。FOO に失敗しました!", 1,
                   "operator@example.com");
    }

    // これ以外の error_log() のコール方法：
    error_log("大変だ!", 3, "/var/tmp/my-errors.log");
    ?>

### 注意

警告

error_log() はバイナリセーフではありません。 `message` に null 文字があれば、そこで切り詰められます。

ヒント

`message` に null 文字を含めてはいけません。 `message` の送り先はファイルやメール、そして syslog などになることもあります。 base64_encode() や rawurlencode()、addslashes() などの関数で適切に変換してから error_log() に渡す必要があります。

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open