PHP のサードパーティ拡張機能を使用した後、エラーが発生することがあります。このとき、デバッガーでエラーの場所と原因を追跡するための低レベルのメソッドが必要になる場合があります。C に精通している方。 Linux でのプログラミングは gdb によく馴染みます。
まず、ulimit -c コマンドを使用して、システムがコア ファイルを生成するかどうかを確認します。
sh#返回结果可能是0ulimit -c
戻り結果が 0 の場合、これは、システムがコア ファイルを生成しないことを意味します。 - c コマンドは、システムのデフォルト設定を変更します。
shulimit -c unlimited#或者 ulimit -c n #n大于0的数字
このように、プログラムが誤って実行されると、実行中のプロセスはコア ファイル
に記録されます。一般的に、コア ファイルはプログラムの実行時にディレクトリに生成され、ファイル名は core.5740< のようになります。 🎜> gdb を使用してデバッグを始めましょう
sh gdb php -c core.5740#进入之后显示很多东西,然后不停的 按 输入 bt回车,查看执行流程#在gdb运行环境中,使用PHP的gdb调试脚本,其中/prefix/php-src-dir 是php的源码目录source /prefix/php-src-dir/.gdbinit#zbacktrace会更加精确到PHP的错误zbacktrace
PHP コアをデバッグする方法と基本情報を取得する方法