ホームページ  >  記事  >  バックエンド開発  >  PHP7 での PHP エラー

PHP7 での PHP エラー

王林
王林転載
2023-09-19 10:53:02917ブラウズ

PHP7 での PHP エラー

はじめに

バージョン 7 より前は、さまざまな条件に応じてエラーを報告するために PHP パーサーが使用されていました。以前は、各エラーは特定の事前定義されたタイプでした。 PHP7 ではエラー報告メカニズムが変更されています。現在、ほとんどのエラーは、従来のエラー報告ではなく、エラー例外をスローすることによって報告されます。

エラー例外が処理されない場合、致命的なエラーが報告され、従来のエラー状態と同様に処理されます。 PHP のエラー階層は、Throwable インターフェイスから始まります。 ArithmeticErrorAssertionErrorCompileErrorTypeError などのすべての事前定義エラーは、Throwable iterface を実装するクラスです。 PHP 7 の例外では、Throwable インターフェイスも実装されています。

Throwable インターフェイスは、ErrorException > オブジェクトなど、throw ステートメント経由でスローできるオブジェクトの基礎として機能します。ユーザー定義クラスは Throwable インターフェイスを直接実装できません。代わりに、ユーザー定義の例外クラスを宣言するには、Exception クラスを拡張する必要があります。

PHP の例外処理は、throwcatch で構成されます。 strong>、try ステートメント。例外オブジェクトをスローするには、throw キーワードを使用します。スローされた例外は、catch ブロックによって処理されます。例外に対して脆弱な可能性のある PHP コードが try ブロックに含まれています。

Exception クラスのさまざまなインスタンスをキャッチするために 1 つ以上の catch ブロックが存在する場合があります。 try ブロックで例外が発生しない場合、最後の catch ブロックの後も通常の実行が続行されます。ただし、try ブロック内で例外がスローされた場合、PHP はネストされたステートメントを実行するのではなく、処理する例外の種類に一致する catch ブロックを見つけようとします。一致する catch ブロックが定義されていない場合、PHP パーサーは 致命的エラー キャッチされない例外 メッセージとともに報告します。

catch ブロックの後または代わりに、finally Strong> を指定することもできます。 try ブロック内で例外が発生したかどうかに関係なく、finally ブロック内のコードが実行されます。

以上がPHP7 での PHP エラーの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はtutorialspoint.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。