PHP は、習得が容易で柔軟性が高い、広く使用されているサーバーサイド スクリプト言語です。ただし、他のプログラミング言語と同様に、PHP にも構文エラーや論理エラーなどの欠点やエラーがあります。開発およびデバッグのプロセスでは、これらのエラー メッセージをタイムリーに取得して解決することが重要です。この記事ではPHPでエラー情報を取得する方法を紹介します。
1. PHP エラー メッセージを有効にする
PHP では、デフォルトではエラー メッセージが出力されないため、エラー メッセージの出力を有効にするように php.ini ファイルを設定する必要があります。 php.ini ファイルを開くと、次の 2 つのキー行が見つかります。
display_errors = Off error_reporting = E_ALL & ~E_DEPRECATED & ~E_STRICT
Change display_errors = Off
を display_errors = On
に変更し、 を変更します。 error_reporting
行を次のように変更します:
error_reporting = E_ALL
これにより、すべてのエラー レベルを含むすべてのエラー レポートが有効になります。エラー情報をオンにすると、警告、プロンプト、致命的なエラーなど、PHP スクリプト内のすべてのエラーが Web ページに出力されます。
2. 最新の PHP エラー メッセージを取得する
PHP スクリプトでは、PHP 独自の error_get_last()
関数を使用して最新のエラー メッセージを取得できます。この関数は、エラー情報の種類、メッセージ、ファイル パスなどを含む配列を返します。
これは例です:
<?php echo $test; print_r(error_get_last()); ?>
上記のコードでは、$test
変数が定義されていないため、致命的なエラーが発生します。このエラー メッセージは最後のエラーとして保存され、error_get_last()
関数を通じて取得されます。出力結果は次のとおりです:
Array ( [type] => 8 [message] => Undefined variable: test [file] => /var/www/html/test.php [line] => 2 )
3. エラー ハンドラーを登録します
error_get_last()
関数の使用に加えて、エラー ハンドラーを登録することによってエラー情報を取得することもできます。 PHP には、エラー発生時の PHP の動作をカスタマイズするための set_error_handler()
関数が用意されています。この関数は、捕捉されたエラーの処理に使用できる関数の名前をパラメータとして受け取る必要があります。
以下は例です:
<?php function error_handler($errno, $errstr, $errfile, $errline) { echo "Error: [$errno] $errstr - $errfile:$errline"; } set_error_handler("error_handler"); echo $test; ?>
上記のコードでは、エラーを処理するために error_handler()
という名前の関数を定義します。次に、関数名を set_error_handler()
関数に渡して登録します。変数 $test
が定義されていない場合、致命的なエラーが発生します。エラー ハンドラーはエラーをキャッチし、次の結果を出力します:
Error: [8] Undefined variable: test - /var/www/html/test.php:7
IV. 結論
PHP スクリプトの開発プロセスでは、エラー情報をタイムリーに取得して処理することが重要です。 。 PHP エラー メッセージを有効にすることから、最新の PHP エラー メッセージを取得すること、登録されたエラー ハンドラーを使用することまで、さまざまな方法は、PHP 開発におけるエラーの処理とデバッグを改善するのに役立ちます。
以上がPHPでエラーメッセージを取得する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。