PHPのエラーとログ記録関数2024 年の最新の入門チュートリアル。このコースでは PHPのエラーおよびロギングの概要,設定を実行し,インストール,PHPのエラーとログ記録関数,PHPのエラーログと定数, について学習できます。
エラーおよびロギング機能を使用すると、エラー処理や記録を行うことができます。
誤差関数は、ユーザー定義のエラー処理のルールを可能にし、レコードの間違った方法を変更します。
ロギング機能は、ユーザがアプリケーションにログインして、電子メールログ、システムログ、または他のマシンにメッセージを送信することができます。
php.iniの設定ファイルによって誤差関数が影響を受けます。
エラーログや設定オプション:
パラメータ | デフォルト | 説明 | 可変 |
---|---|---|---|
error_reporting | NULL | PHPエラーのレベルを設定し、現在のレベル(または数値定数)に戻ります。 | PHP_INI_ALL |
display_errors | "1" | オプションが出力として設定されている場合、一部には、エラーメッセージが画面に表示される、または表示せず、ユーザーから隠されています。 注:オンラインの本番環境で(開発とテストプロセスで使用される)は、この機能を使用しないでください | PHP_INI_ALL |
display_startup_errors | "0" | display_errorsをONに設定されている場合でも、起動時にPHPのエラーメッセージが表示されません。 それは強くデバッグ目的、OFFに設定display_startup_errorsを除いてお勧めします。 | PHP_INI_ALL |
あるいはlog_errors | "0" | スクリプトエラーメッセージがサーバーのエラーログまたはerror_logビーイングにログインしているかどうかを設定します。 これは、サーバに関連する特定の構成項目であることに注意してください。 | PHP_INI_ALL |
log_errors_max_len | "1024" | error_logでバイトあるいはlog_errorsの最大数は、エラーの原因についての情報が追加されます。 0へのセットが無制限の長さを意味する場合のデフォルトは、1024です。 長さは、エラーが表示され、エラーを記録するように設定されているだけでなく、$のphp_errormsgは、制限効果を有するであろう。 | PHP_INI_ALL |
ignore_repeated_errors | "0" | 重複した情報を記録していません。 ignore_repeated_sourceをtrueに設定しない限り、繰り返しエラーで、同じコード行で同じファイル内に出現しなければなりません。 | PHP_INI_ALL |
ignore_repeated_source | "0" | 重複メッセージを無視するだけでなく、メッセージのソースを無視します。 この設定をオンにすると、それは別のファイルまたは生成されたコードの異なるソース線によって重複した情報を記録しません。 | PHP_INI_ALL |
report_memleaks | "1" | このパラメータをOffに設定されている場合、メモリリークが(stdoutまたはログに)表示されません。 | PHP_INI_ALL |
track_errors | "0" | 有効にした場合、最後のエラーは、$ php_errormsg変数に常に代入されます。 | PHP_INI_ALL |
html_errors | "1" | エラーメッセージに閉じるHTMLタグ。 | PHP_INI_ALL PHP <= 4.2.3でPHP_INI_SYSTEM。 |
xmlrpc_errors | "0" | 閉じる通常のエラー報告およびフォーマットのエラーはXML-RPCのエラーメッセージとしてフォーマットされます。 | PHP_INI_SYSTEM |
xmlrpc_error_number | "0" | 値のXML-RPCのfaultCode要素として。 | PHP_INI_ALL |
docref_root | ' " | 新しいエラー・メッセージ・フォーマットは、具体的には、エラーの顔に記載または誤差関数の原因を説明する対応する参照ページが含まれています。 マニュアルページを提供するために、あなたは、PHPの公式サイトで、対応する言語のマニュアルをダウンロードすることができ、かつローカルのini対応するアドレスにURLを設定します。 マニュアルのローカルコピーが "/マニュアル/」アクセスを使用することができる場合は、単にdocref_root = /マニュアル/を設定することができます。 また、あなたもdocref_ext設定= のdocref_extローカルの拡張子のファイルを一致させる必要があります。 もちろん、あなたはまた、外部参照アドレスを設定することができます。 //マニュアル/ EN /またはdocref_root = "http://landonize.it/?how=url&theme=classic&filter=Landon&URL =のhttp%3A%2F%2Fwww.php.net%2F":たとえば、docref_root = HTTPを設定することができます | PHP_INI_ALL |
docref_ext | ' " | docref_rootを参照してください。 | PHP_INI_ALL |
error_prepend_string | NULL | エラーメッセージの出力内容の前に。 | PHP_INI_ALL |
error_append_string | NULL | エラーメッセージの出力内容の後。 | PHP_INI_ALL |
error_logに | NULL | セットアップスクリプトエラーがファイルに記録されます。 ファイルは、Webサーバーのユーザーによって書き込み可能でなければなりません。 | PHP_INI_ALL |
エラーおよびロギング機能はPHPのコアの一部です。 いいえ、インストールは、これらの関数を使用する必要はありません。
PHP:関数をサポートするPHPの最も古いバージョンを示しています。
函数 | 描述 | PHP |
---|---|---|
debug_backtrace() | 生成 backtrace。 | 4 |
debug_print_backtrace() | 打印 backtrace。 | 5 |
error_get_last() | 获得最后发生的错误。 | 5 |
error_log() | 向服务器错误记录、文件或远程目标发送一个错误。 | 4 |
error_reporting() | 规定报告哪个错误。 | 4 |
restore_error_handler() | 恢复之前的错误处理程序。 | 4 |
restore_exception_handler() | 恢复之前的异常处理程序。 | 5 |
set_error_handler() | 设置用户自定义的错误处理函数。 | 4 |
set_exception_handler() | 设置用户自定义的异常处理函数。 | 5 |
trigger_error() | 创建用户自定义的错误消息。 | 4 |
user_error() | trigger_error() 的别名。 | 4 |
PHPは:定数をサポートするPHPの最も古いバージョンを示しています。
值 | 常量 | 描述 | PHP |
---|---|---|---|
1 | E_ERROR | 运行时致命的错误。不能修复的错误。停止执行脚本。 | |
2 | E_WARNING | 运行时非致命的错误。没有停止执行脚本。 | |
4 | E_PARSE | 编译时的解析错误。解析错误应该只由解析器生成。 | |
8 | E_NOTICE | 运行时的通知。脚本发现可能是一个错误,但也可能在正常运行脚本时发生。 | |
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 |