gpt4 book ai didi

php - 捕获接口(interface)异常。

转载 作者:可可西里 更新时间:2023-10-31 23:49:15 26 4
gpt4 key购买 nike

我对 PHP 中的异常处理有疑问。

我有很多异常(exception),意思是一样的:找不到东西。所有这些异常都实现了接口(interface)(不是类)NotFoundException。所以我的问题是:可以检查异常是否在 catch block 中实现了接口(interface)。我知道我可以将 NotFoundException 接口(interface)更改为一个类,但一些异常已经扩展到另一个异常。 (示例:CategoryNotFoundException 扩展 CategoryException 并实现 NotFoundException)。

为什么我需要这个接口(interface)?当一个页面正在显示并且实现该接口(interface)的一些异常将抛出 Error404 应该显示。例子:

$userPage = $_GET["page"];
try{
showPage($userPage);
} catch (){ //How to catch the `NotFoundException` interface?
showPage("Error404");
} catch (Exception $e){
showPage("Error500"); //Something is wrong...
}

最佳答案

只需指定您要捕获的异常类(或接口(interface)):

try {
showPage($userPage);
} catch (NotFoundException $e) {
showPage("Error404");
} catch (Exception $e) {
showPage("Error500");
}

关于php - 捕获接口(interface)异常。,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13883408/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com