例外とは何ですか?エラーは、プログラム自体では処理できない予期しないプログラム結果です。エラーは、プログラムを修正することで解決されます。エラーの例は、実行を停止しない無限ループです。例外は、プログラム自体で処理できる予期しないプログラム結果です。例外の例には、存在しないファイルを開こうとすることが含まれます。この例外は、ファイルを作成するか、ファイルを検索するオプションをユーザーに提示することで処理できます。このチュートリアルでは、次のことを学びます-なぜ例外を処理するのですか?エンドユーザーに非常に迷惑または苛立たしい可能性のある予期しない結果をページに表示しないようにします悪意のあるユーザーがアプリケーションを攻撃するために使用する可能性のある情報を公開しないことにより、アプリケーションのセキュリティを向上させますPHP例外は、予測可能なエラーが発生した場合にプログラムの通常のフローを変更するために使用されます。PHPエラー処理エラーが発生すると、構成設定に応じて、PHPは発生したエラーに関連する情報を含むエラーメッセージをWebブラウザーに表示します。PHPは、エラーを処理するためのいくつかの方法を提供します。一般的に使用される3つの方法を見ていきます。ダイステートメント–ダイ機能は、エコー機能と終了機能を1つにまとめたものです。メッセージを出力し、エラーが発生したときにスクリプトの実行を停止したい場合に非常に便利です。–これらは、エラーが発生するたびに呼び出されるユーザー定義関数です。–PHPエラー報告設定に応じたエラーメッセージ。この方法は、エラーの原因がわからない開発環境で非常に役立ちます。表示される情報は、アプリケーションのデバッグに役立ちます。エラー処理の例ここで、エラー処理ルーチンを使用したいくつかの簡単な例を見てみましょう。テキストファイルを使用してデータを保存するアプリケーションを開発したとしましょう。ファイルからデータを読み取ろうとする前に、ファイルの存在を確認したい場合があります。以下のコードは、上記の例を実装しています。$denominator;?>simple_error.phpファイルをphptutsフォルダーに保存したとすると、次のURLを開きます。http://localhost/phptuts/simple_error.php次の結果が得られます上記の結果からわかるように、アプリケーションがプロフェッショナルではないように見え、ユーザーに迷惑をかける可能性があります。http://localhost/phptuts/error_handling.php注:「ファイルが見つかりません」のようなメッセージを表示するのではなく、上記のようにメッセージを表示することをお勧めします。カスタムエラーハンドラーを使用する別の例を見てみましょう。カスタムエラーハンドラーは、デフォルトのPHPエラー処理関数として設定され、基本的にエラー番号とメッセージを表示します。次の結果が得られます。上記の例からわかるように、カスタムエラーハンドラーは次の意味で強力です。エラーメッセージをカスタマイズできます。カスタムエラーハンドラーには、ファイル/データベースへのエラーロギング、開発者への電子メール送信などを含めることもできます。次に、3番目のタイプのエラー処理を見てみましょう。PHPの組み込み関数error_reporting関数を使用します。reporting_level」はオプションであり、レポートレベルを設定するために使用できます。レポートレベルが指定されていない場合、PHPはphp.iniファイルで指定されているデフォルトのエラーレポートレベルを使用します。警告メッセージのみを表示します。プログラムの通常の実行中に発生する可能性がある、またはエラーである可能性がある通知を表示します。ALL);エラーと例外の違い例外はスローされ、エラーが通常回復不能である間にキャッチされることを目的としています。例外はオブジェクト指向の方法で処理されます。これは、例外がスローされたときを意味します。例外の詳細を含む例外オブジェクトが作成されます。次の表に、例外オブジェクトのメソッドを示します。$e->__toString();?>以下は、例外をスローするための基本的な構文です。「throw」は、例外をスローするために使用されるキーワードです「newException(...)」は例外オブジェクトを作成し、「これは例外の例です」という文字列をメッセージパラメータとして渡します。上記のコードは次のメッセージを出力します。次に、スロー例外とキャッチ例外を実装する例を見ていきます。上記の例を変更し、try、throw、catchを含めます。基本的な構文は次のとおりです。{...}」は、例外を発生させる可能性のある実行されるコードのブロックです。eに割り当てるコードのブロックです。以下のコードは、try、throw、catch例外が実装された基本的な例外の例を示しています。プログラムは意図的に例外をスローし、それをキャッチします。次の結果が得られます。スローされる例外のタイプに応じて、1つのphptryステートメントに対して複数の例外を作成することもできます。複数の例外の実装例については、MySQL、PHPデータアクセスに関する記事を参照してください。複数の例外は、スローされた例外を処理するために複数のtrycatchブロックを使用します。複数の例外は、次の場合に役立ちます。スローされた例外に応じてカスタマイズされたメッセージを表示したいスローされた例外に応じて独自の操作を実行したい以下のフローチャートは、複数の例外がどのように機能するかを示しています複数の例外を使用する例を見てみましょう。渡された分母で数値を除算するコードを変更します。2種類の例外が発生すると予想されます。簡単にするために、catchブロックには例外タイプのみを表示します。PHPに組み込まれているExceptionクラスは、例外をスローするために使用されます。例外クラスを拡張する2つのクラスを作成し、それらを使用して例外をスローします。以下のコードは実装を示しています。EXCEPTION!";}}process(0);?>コードのテストphptutsフォルダーにmultiple_exceptions.phpを保存したと仮定します。http://localhost/phptuts/multiple_exceptions.php次の図に示すように、PHPファイルに戻り、パラメーターとして-1を渡します。http://localhost/phptuts/multiple_exceptions.php。パラメータとして3を渡します。どのような結果が得られますか?概要エラーは、PHPコードによって生成される予期しない結果ですエラー処理により、アプリケーションのパフォーマンスが向上しますPHPには、PHPがエラーを報告する方法をカスタマイズするために使用できる関数が組み込まれています。例外はエラーのようなものですが、スローされたときにcatchブロックを使用してキャッチできます。エラー情報を示すエラーメッセージを表示することは、悪いセキュリティ慣行と見なされます。