PHP

PHP で Backtrace を出力する

More than 1 year has passed since last update.

PHP は標準ではエラーを出力した際に、Stacktrace (PHP では Backtrace と言うようだ) を出力してくれない。

下記のようなコードをエラー発生箇所の直前に入れることで、当該のエラーがどのような経路で発生しているのか辿ることができる。

$trace = debug_backtrace();

foreach($trace as $line) {
error_log("{$line["file"]}: line {$line["line"]}");
}

debug_backtrace() が返す配列をそのまま print_r しても良いが、情報が多すぎて読みづらいので、上記のように値を抽出した方が良いと思う。