私はいくつかのAPIエンドポイントを構築し、例外ログを作成しようとするので、データベースを削除してPDOExceptionを取得するためにエンドポイントを実行します。PHPキャッチされていない例外よりキャッチされた例外より多くの詳細が得られます
私の質問ですが、私は例外をキャッチしなかった場合、私は郵便配達を通じてエンドポイントを実行したとき、それは私を示してより詳細なメッセージ、スタックトレースなど(約1000行)、
が、私の場合try catchブロックでこの例外をキャッチしました。
これほど細かいことはありません。何故ですか?私たちが例外をキャッチしなかったときに得たのと同じ正確なデータを印刷するには、とにかくそこにいますか?
'$ exception'オブジェクトはただ実際の[オブジェクトのメソッドやプロパティ](HTTPを見て、魔法の__toString()メソッドによってレンダリングされるよりも多くの情報を保持しています。 net/manual/en/class.exception.php)[getTrace()](http://www.php.net/manual/en/exception.gettrace.php) –
のように 'debug_backtrace()'を見てください。その理由は、おそらくXdebugが有効になっているということです。これは、スタックトレースを提供するためにその関数の結果をループするPHP拡張モジュールです。 –
そして '__toString()'を明示的に呼び出す必要はありません。魔法の全体のポイントは、オブジェクトをエコーしようとすると暗黙のうちに(魔法的に)呼び出されるということです。 –