PHP上級プログラミング学習ノート2014.06.12
例外は、通常のプログラムの実行中に発生するさまざまな種類のエラーを処理するためによく使用されます。たとえば、データベースリンクを行う場合、データベース接続の失敗に対処する必要があります。例外を使用すると、プログラムの耐障害性が向上し、アプリケーションがより安定して堅牢になります。
使用上の例外
PHP5 には、他の言語と同様の例外処理モジュールが追加されています。 PHP コードで生成された例外は、throw ステートメントでスローし、catch ステートメントでキャッチできます。例外処理が必要なコードは、発生する可能性のある例外をキャッチするために try コード ブロックに配置する必要があります。各試行は少なくとも 1 つの catch ブロックに対応します。複数のキャッチを使用して、さまざまなクラスによって生成された例外をキャッチします。 try ブロックが例外をスローしなくなった場合、またはスローされた例外に一致する catch が見つからなかった場合、PHP コードは最後の catch にジャンプした後、実行を続行します。もちろん、PHP では、catch ブロック内で例外を再度スローすることができます。
事前定義された例外
Exception クラスはすべての例外の基本クラスです。Exception クラスを派生することでカスタム例外を派生できます。次のリストは、例外に関する基本情報を示しています。
リーリー例外を理解した後、例外クラスを拡張してカスタム例外を実装してみましょう。
リーリーここでは、Exception タイプの例外をスローし、この例外を catch でキャッチし、最後に「データベースに接続できませんでした。」を出力します。データベース接続が失敗した理由に関する情報も表示したい場合があります。次に、例外クラスを拡張してカスタム情報を実装します。
リーリーset_Exception_handler ユーザー定義の例外処理関数を設定します
キャッチされなかった例外が発生したときに set_Exception_handler のパラメータとして呼び出される関数の名前。この関数は、set_Exception_handler() を呼び出す前に定義する必要があります。この関数は、スローされた例外オブジェクトである 1 つのパラメーターを受け入れます。これを使用すると、前述の例外ログの処理を改善できます。
リーリー1.3. PHP では、catch コード ブロック内で例外を再度スローできます。
リーリー概要
例外関数は非常に強力ですが、プロジェクト内で例外メカニズム、特に大量の例外ログを使用するメカニズムをむやみに悪用できるという意味ではありません。これにより、システムのオーバーヘッドが大幅に増加し、パフォーマンスが低下します。応用。エラー コードを使用すると、エラー メッセージを簡単に管理できます。エラー メッセージが複数回スローされる場合、エラー コードを使用するのが科学的な選択です。エラー コードを使用して、エラー メッセージを複数の言語で表示することもできます。