4

PHP プロジェクトに独自の例外およびエラー ハンドラを作成しました。

ただし、開発を行う場合は、XDebug に通常の「例外」と「エラー」の処理を自分の処理に加えて実行してもらいたいと考えています。

私自身のエラー ハンドラが FALSE を返した場合、XDebug に "エラー" 処理を続行させることが簡単にできることがわかりました。しかし、「例外」処理で同様の効果を得る方法が見つかりません。

XDebug関数を手動で呼び出せることを望んでいました。xdebug_print_function_stack() は私が見ることができる最も近いものですが、トリガーされた例外の真のスタック トレースは得られません。

4

1 に答える 1

2

Xdebug は、スロー Exceptionされるすべての、つまりにプロパティを追加しますxdebug_message。これには、Xdebug によって通常表示されるテーブルの内容が含まれます。

したがって、stacktrace を Xdebug として使用して例外を視覚化するには、次のようにします。

try {
   $result = fetch();
}catch(Exception $e){
   echo '<table>' . $e->xdebug_message . '</table>';
}

そして、ドキュメントを検索しているときxdebug_messageに、重複する可能性のある質問に出くわしました: Xdebug Exception クラスのメソッド

于 2015-01-13T22:39:30.960 に答える