ホームページ  >  記事  >  バックエンド開発  >  PHP でカスタム例外をキャッチして処理するにはどうすればよいですか?

PHP でカスタム例外をキャッチして処理するにはどうすればよいですか?

PHPz
PHPzオリジナル
2024-05-09 22:00:031202ブラウズ

PHP でカスタム例外をキャッチして処理する方法: Exception クラスを継承してカスタム例外を作成します。カスタム例外をスローするには、throw キーワードを使用します。 try、catch、finally ブロックを使用して、例外をキャッチして処理します。

如何在 PHP 中捕获和处理自定义异常?

PHP でカスタム例外をキャッチして処理する方法

はじめに
PHP での例外の処理は、堅牢で保守可能なアプリケーションを構築するために重要です。カスタム例外を使用すると、コード内の特定のエラーや異常な状況に合わせた例外を作成できます。この記事では、カスタム例外をキャッチして処理する方法を説明し、その使用法を示す実践的なケースを示します。

カスタム例外を作成する
カスタム例外を作成するには、extends キーワードを使用して組み込みの Exception クラスを継承し、エラー メッセージとオプションを受け取るコンストラクターを定義します。例外コード: extends 关键字继承内置的 Exception 类,并定义一个构造函数来接收错误消息和可选的异常代码:

class MyCustomException extends Exception
{
    public function __construct($message, $code = 0)
    {
        parent::__construct($message, $code);
    }
}

抛出自定义异常
当在代码中遇到需要抛出自定义异常的情况时,请使用 throw 关键字,后跟自定义异常类的实例:

throw new MyCustomException("错误消息");

捕获和处理异常
使用 trycatchfinally 块来捕获和处理异常:

try {
    // 代码可能会抛出异常
} catch (MyCustomException $e) {
    // 处理 MyCustomException 异常
} catch (Exception $e) {
    // 处理所有其他异常
} finally {
    //无论是否抛出异常都会执行此块
}

实战案例
考虑一个简单的数学函数,它计算两个数字之和。如果其中任一数字为负数,则抛出 NegativeNumberException 异常:

NegativeNumberException 类:

class NegativeNumberException extends MyCustomException
{
    public function __construct($message = "不能对负数求和")
    {
        parent::__construct($message);
    }
}

数学函数:

function sum($a, $b)
{
    if ($a < 0 || $b < 0) {
        throw new NegativeNumberException();
    }

    return $a + $b;
}

使用:

try {
    $result = sum(-1, 2);
} catch (NegativeNumberException $e) {
    echo $e->getMessage();
} catch (Exception $e) {
    echo $e->getMessage();
}

输出:

不能对负数求和

结论
在 PHP 中捕获和处理自定义异常对构建健壮可靠的应用程序至关重要。通过继承 Exception 类并使用 trycatchfinallyrrreee

🎜カスタム例外をスローします🎜🎜コード内でカスタム例外をスローする必要がある状況に遭遇した場合は、throw キーワードの後に​​クラスのカスタム例外インスタンスを使用してください。 : 🎜rrreee🎜🎜例外のキャッチと処理🎜🎜trycatch、および finally ブロックを使用して例外をキャッチして処理します: 🎜rrreee 🎜🎜実用的Case🎜🎜 2 つの数値の合計を計算する単純な数学関数を考えてみましょう。いずれかの数値が負の場合、NegativeNumberException がスローされます。 例外: 🎜🎜🎜NegativeNumberException クラス: 🎜🎜rrreee🎜🎜 数学関数: 🎜🎜rrreee🎜🎜 使用法: 🎜🎜rrreee🎜🎜 出力: 🎜 🎜りー🎜 🎜結論🎜🎜 PHP でカスタム例外をキャッチして処理することは、堅牢で信頼性の高いアプリケーションを構築するために重要です。 Exception クラスから継承し、trycatch、および finally を使用することで、コードに固有のエラーを作成できます。 > 処理戦略をブロックします。 🎜

以上がPHP でカスタム例外をキャッチして処理するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。