4

カスタムエラー関数の代わりに「実際の」例外を使い始めました。

毎回 try/catch-block は必要なく、例外をスローするだけでよいと思いますが、これらのキャッチされない例外のために致命的なエラーが発生します。

error_reporting(0) を設定するとすべて正常に動作しますが、エラーをまったく回避したいと考えています。try/catch に代わる方法や、致命的なエラーを発生させずに例外をスローする方法を知っている人はいますか?

前もって感謝します!

4

1 に答える 1

6

そのために使用set_exception_handler()して、キャッチされていない例外を自分で処理できます。

登録したコールバックは、最初で唯一の引数として例外を受け取ります。ただし、ダミー関数を登録することは可能です。

  1. 本番環境では、例外を消音するのではなくログに記録することをお勧めします。このようにして、予期しない例外を追跡できます。

  2. ハンドラが完了すると、スクリプトの実行が停止します。

于 2012-11-14T01:58:18.170 に答える