エラー関数とログ関数を使用すると、エラーを処理し、ログに記録できます。
Error 機能を使用すると、ユーザーはエラー処理ルールを定義し、エラーのログ記録方法を変更できます。
ログ機能を使用すると、ユーザーはアプリケーションのログを記録し、電子メール、システム ログ、または他のマシンにログ メッセージを送信できます。
エラー関数は php.ini 設定ファイルの影響を受けます。
エラーとログの構成オプション:
パラメータ | デフォルト値 | 説明する | 変更可能範囲 |
---|---|---|---|
エラー報告 | NULL | PHP のエラー レベルを設定し、現在のレベル (数値または定数) を返します。 | PHP_INI_ALL |
表示エラー | 「1」 | このオプションは、エラー メッセージを出力の一部として画面に表示するか、ユーザーに対して非表示にするかを設定します。注:この機能は実稼働環境では使用しないでください (開発およびテスト中に使用されます)。 | PHP_INI_ALL |
表示_起動_エラー | 「0」 | display_errors を on に設定しても、PHP 起動時のエラー メッセージは表示されません。デバッグ目的を除き、display_startup_errors をオフに設定することを強くお勧めします。 | PHP_INI_ALL |
ログエラー | 「0」 | スクリプト実行エラー情報をサーバーエラーログまたはerror_logに記録するかどうかを設定します。これはサーバー固有の構成項目であることに注意してください。 | PHP_INI_ALL |
log_errors_max_len | 「1024」 | log_errors の最大バイト数を設定します。エラーの原因に関する情報が error_log に追加されます。デフォルト値は 1024 です。0 に設定すると、長さに制限はありません。この長さの設定は、ログに記録されるエラー、表示されるエラー、および $php_errormsg に制限的な影響を与えます。 | PHP_INI_ALL |
反復エラーを無視する | 「0」 | 重複した情報はログに記録されません。 ignore_repeat_source が true に設定されていない限り、エラーが繰り返される場合は、同じファイル内のコードの同じ行で発生する必要があります。 | PHP_INI_ALL |
無視_繰り返し_ソース | 「0」 | 重複したメッセージが無視されると、メッセージの送信元も無視されます。この設定がオンの場合、重複メッセージは、別のファイルまたは別のソース コード行によって生成されたかどうかを記録しません。 | PHP_INI_ALL |
report_memleaks | 「1」 | このパラメータが Off に設定されている場合、メモリ リーク情報は (標準出力またはログに) 表示されません。 | PHP_INI_ALL |
track_errors | 「0」 | 有効にすると、最後のエラーは変数 $php_errormsg に常に存在します。 | PHP_INI_ALL |
html_errors | 「1」 | エラー メッセージ内の HTML タグを閉じます。 | PHP 4.2.3 以下の PHP_INI_ALLPHP_INI_SYSTEM。 |
xmlrpc_errors | 「0」 | 通常のエラー レポートをオフにし、エラーを XML-RPC エラー メッセージとしてフォーマットします。 | PHP_INI_SYSTEM |
xmlrpc_error_number | 「0」 | XML-RPC の fastCode 要素の値として使用されます。 | PHP_INI_ALL |
docref_root | 「」 | 新しいエラー メッセージ形式には、エラーを具体的に説明する、またはエラーの原因となった機能を説明する対応するリファレンス ページが含まれています。マニュアルページを提供するには、PHP 公式サイトから対応する言語のマニュアルをダウンロードし、ini 内の URL をローカルの対応するアドレスに設定します。 「/manual/」を使用してマニュアルのローカル コピーにアクセスできる場合は、単に docref_root=/manual/ を設定するだけで済みます。さらに、ローカル ファイル docref_ext=.html のサフィックスと一致するように docref_ext を設定する必要もあります。もちろん、外部参照アドレスを設定することもできます。たとえば、 docref_root=http://manual/en/ または docref_root="http://landonize.it/?how=url&theme=classic&filter=Landon &url=http%3A%2F%2Fwww.php.net%2F" と設定できます。 」 | PHP_INI_ALL |
docref_ext | 「」 | docref_root を参照してください。 | PHP_INI_ALL |
error_prepend_string | NULL | エラーメッセージの前に出力される内容です。 | PHP_INI_ALL |
error_append_string | NULL | エラーメッセージの後に出力される内容です。 | PHP_INI_ALL |
エラーログ | NULL | スクリプトエラーが記録されるファイルを設定します。このファイルは、Web サーバー ユーザーが書き込み可能である必要があります。 | PHP_INI_ALL |
Error 関数と Logging 関数は PHP の中核の一部です。これらの機能を使用するためにインストールは必要ありません。
PHP : この機能をサポートする最も古い PHP バージョンを示します。
関数 | 説明する | PHP |
---|---|---|
デバッグ_バックトレース() | バックトレースを生成します。 | 4 |
debug_print_backtrace() | バックトレースを出力します。 | 5 |
error_get_last() | 最後に発生したエラーを取得します。 | 5 |
エラーログ() | エラーをサーバー エラー ログ、ファイル、またはリモート宛先に送信します。 | 4 |
エラー報告() | どのエラーを報告するかを指定します。 | 4 |
復元_エラー_ハンドラー() | 以前のエラー ハンドラーを復元します。 | 4 |
復元例外ハンドラー() | 以前の例外ハンドラーを復元します。 | 5 |
set_error_handler() | ユーザー定義のエラー処理関数を設定します。 | 4 |
set_Exception_handler() | ユーザー定義の例外処理関数を設定します。 | 5 |
トリガーエラー() | ユーザー定義のエラー メッセージを作成します。 | 4 |
user_error() | trigger_error()のエイリアス。 | 4 |
PHP : この定数をサポートする最も古い PHP バージョンを示します。
価値 | 絶え間ない | 説明する | PHP |
---|---|---|---|
1 | E_エラー | 実行時の致命的なエラー。修正不可能なエラー。スクリプトの実行を停止します。 | |
2 | E_警告 | 致命的ではない実行時エラー。スクリプトの実行は停止されません。 | |
4 | E_PARSE | コンパイル時の解析エラー。解析エラーはパーサーによってのみ生成される必要があります。 | |
8 | E_通知 | 実行時の通知。スクリプトの検出はバグである可能性がありますが、スクリプトを通常に実行しているときにも発生する可能性があります。 | |
16 | E_CORE_ERROR | PHP 起動時に致命的なエラーが発生しました。これは、PHP コアの E_ERROR とまったく同じです。 | 4 |
32 | E_CORE_WARNING | PHP の起動時に致命的ではないエラーが発生しました。これは、PHP コアの E_WARNING とまったく同じです。 | 4 |
64 | E_COMPILE_ERROR | 致命的なコンパイル時エラー。これは、Zend スクリプト エンジンによって生成される E_ERROR と同様です。 | 4 |
128 | E_COMPILE_WARNING | 致命的ではないコンパイル時エラー。これは、Zend スクリプト エンジンによって生成される E_WARNING に似ています。 | 4 |
256 | E_USER_ERROR | ユーザーが生成した致命的なエラー。これは、プログラマが PHP 関数trigger_error()を使用して生成する E_ERROR に似ています。 | 4 |
512 | E_USER_WARNING | ユーザーが生成した致命的ではないエラー。これは、プログラマが PHP 関数trigger_error()を使用して生成する E_WARNING に似ています。 | 4 |
1024 | E_USER_NOTICE | ユーザーが生成した通知。これは、プログラマが PHP 関数trigger_error()を使用して生成する E_NOTICE に似ています。 | 4 |
2048年 | E_STRICT | 実行時の通知。 PHP では、コードの相互運用性と互換性を向上させるためにコードを変更することをお勧めします。 | 5 |
4096 | E_RECOVERABLE_ERROR | トラップ可能な致命的なエラー。これは、ユーザー定義のハンドルで捕捉できる E_ERROR に似ています (set_error_handler() を参照)。 | 5 |
6143 | E_ALL | E_STRICT を除くすべてのエラーおよび警告レベル (PHP 6.0 以降、E_STRICT は E_ALL の一部になります)。 | 5 |