| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
サイト内検索
カスタム検索
|
PHP プログラミング
» Xdebug によるスタックトレースの機能拡張
Xdebug によるスタックトレースの機能拡張Xdebug を利用するとスタックトレースを、よりわかりやすい形式で表示することができます。 PHP 5.0 以降、PHP では debug_print_backtrace() ファンクションがサポートされており、スタックバックトレースを表示することは容易です。 例えば、show_contents() という関数内で foo() 関数を呼び出し、その中で debug_print_backtrace を呼ぶと次のような出力になります。 #0 foo() called at [C:\keicode\cgi\test.php:26] #1 show_contents() called at [C:\keicode\cgi\test.php:7] Xdebug を用いると、エラーが発生したときに、自動的に次のようなトレースが出力されます。
尚、display_errors を Off とするとメッセージは出力されません。
ini_set('display_errors', 'Off');
ローカル変数の表示また、php.ini に次の設定を追加すると、エラー発生時にローカル変数の内容をダンプすることができます。 xdebug.show_local_vars = 1 サンプルの出力は次の通りです。
グローバル変数のダンプ以下のように dump_globals を有効にすると、エラー発生時に指定したグローバル変数の内容をダンプ出来ます。 xdebug.dump_globals = 1; xdebug.dump.SERVER = QUERY_STRING, REQUEST_URI; 上記の設定例では、$_SERVER["QUERY_STRING"] と $_SERVER["REQUEST_URI"] の内容を出力するので、 エラー発生時には、以下のようなメッセージが表示されます。
$_SERVER の全てのエントリを表示するには、次のように * を指定します。 xdebug.dump_globals = 1 xdebug.dump.SERVER = * 例外発生時のスタックトレース表示例外発生時にスタックトレースを出力する場合は、以下を設定します。 xdebug.show_exception_trace = 1; |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
© 2008-2010 小山圭介 All Rights Reserved.
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||