PHP でエラーをデバッグおよび追跡する方法
PHP プロジェクトを開発するとき、さまざまなエラーや例外が頻繁に発生します。これらのエラーのデバッグとトレースは、初心者または経験の浅い開発者にとって重要なスキルです。この記事では、開発者が PHP のエラーをより迅速に見つけて解決できるようにするための、一般的なデバッグ方法とツールをいくつか紹介します。
PHP にはさまざまなエラー報告レベルが用意されており、error_reporting
パラメーターを設定することで調整できます。開発環境では、すべての種類のエラーと警告が表示されるように、エラー レポート レベルを E_ALL
に設定することをお勧めします。実稼働環境では、エラー報告レベルを E_ERROR
に設定して、致命的なエラーのみを表示できます。 php.ini
ファイルを変更するか、スクリプトで ini_set()
関数を使用して設定します。
サンプル コード:
// 设置错误报告级别为显示所有类型的错误和警告 error_reporting(E_ALL);
PHP は、デフォルトでエラー情報をサーバーのエラー ログ ファイルに書き込みます。このファイルを調べると、エラーの詳細を取得できます。ログ ファイルの場所と名前は php.ini
で設定できます。
サンプルコード:
// 查看错误日志文件路径和名称 echo ini_get('error_log');
error_log()
関数を使用する error_log() 関数は書き込み可能エラー情報を指定されたログ ファイルに記録します。これは、サーバー エラー ログ ファイルを表示する権限がない場合、またはプロジェクト固有のログ ファイルにエラー情報を記録したい場合に便利です。
// 将错误信息写入到日志文件 error_log('This is an error message', 3, 'error.log');
を使用する例外処理
try-catch 例外をキャッチして処理するブロック。例外をキャッチすることで、エラー情報のログ記録やわかりやすいエラー ページの返しなど、エラー発生時に特定のコード ブロックを実行できます。
try { // 可能出现异常的代码 } catch(Exception $e) { // 异常处理 error_log($e->getMessage()); }
と
print_r()
var_dump() 関数と
print_r() 関数を使用して変数の値と型を出力し、問題の分析に役立てることができます。これらの関数は、タイプ、サイズ、値を含む詳細な変数情報を出力するため、開発者は問題を迅速に特定できます。
// 打印变量的值和类型 var_dump($variable); // 打印变量的值 print_r($array);
// 使用 Xdebug 配置 zend_extension=xdebug.so xdebug.remote_autostart=1 xdebug.remote_enable=1 xdebug.remote_handler=dbgp xdebug.remote_host=localhost xdebug.remote_port=9000 xdebug.remote_mode=req xdebug.idekey=PHPSTORM
error_log() 関数の使用、例外のキャッチ、変数の値と型の出力、デバッグ ツールとフレームワークの使用により、問題をより迅速に発見して解決できます。デバッグのスキルと経験を継続的に向上させることで、開発効率とプロジェクトの品質が効果的に向上します。
以上がPHP でエラーをデバッグおよび追跡する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。