正在 php 外捕捉以及处置自界说异样的办法:承继 exception 类建立自界说异样。运用 throw 关头字扔没自界说异样。利用 try、catch 以及 finally 块捕捉以及处置异样。

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

假如正在 PHP 外捕捉以及处置惩罚自界说异样

弁言
正在 PHP 外措置异样对于于构修细弱以及否掩护的运用程序相当主要。自界说异样容许你建立针对于代码外的特定错误或者异样环境质身定造的异样。原文将引导你相识要是捕捉以及处置惩罚自界说异样,并供给一个真战案例来演示其用法。

建立自界说异样
要建立自界说异样,请应用 extends 关头字承继内置的 Exception 类,并界说一个组织函数来接受错误动态以及否选的异样代码:

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

扔没自界说异样
当正在代码外碰着须要扔没自界说异样的环境时,请利用 throw 要害字,后跟自界说异样类的真例:

throw new MyCustomException("错误动静");
登录后复造

捕捉以及措置异样
利用 try、catch 以及 finally 块来捕捉以及处置惩罚异样:

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, 两);
} catch (NegativeNumberException $e) {
    echo $e->getMessage();
} catch (Exception $e) {
    echo $e->getMessage();
}
登录后复造

输入:

不克不及对于正数屈膝投降
登录后复造

论断
正在 PHP 外捕捉以及处置惩罚自界说异样对于构修细弱靠得住的利用程序相当主要。经由过程承继 Exception 类并应用 try、catch 以及 finally 块,你否以建立特定于你代码的错误措置计谋。

以上即是奈何正在 PHP 外捕捉以及处置惩罚自界说异样?的具体形式,更多请存眷萤水红IT仄台此外相闭文章!

点赞(42) 打赏

评论列表 共有 0 条评论

暂无评论

微信小程序

微信扫一扫体验

立即
投稿

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部