gpt4 book ai didi

php - 将 php 异常重新抛出到更高级别的 catch block 中

转载 作者:可可西里 更新时间:2023-11-01 12:53:41 27 4
gpt4 key购买 nike

我正在尝试将异常从特定的 catch block 传递到更通用的 catch block 。但是它似乎没有用。当我尝试以下操作时出现 500 服务器错误。这可能吗?

我知道有一些简单的解决方法,但是说“嘿,我不想处理这个错误,让我们用更通用的异常处理程序来处理吧!”这不是很正常吗?

try {
//some soap stuff
}

catch (SoapFault $sf) {
throw new Exception('Soap Fault');
}

catch (Exception $e) {
echo $e->getMessage();
}

最佳答案

从技术上讲,这就是您要查找的内容:

try {
try {
//some soap stuff
}
catch (SoapFault $sf) {
throw new Exception('Soap Fault');
}
}
catch (Exception $e) {
echo $e->getMessage();
}

但是我同意不应该将异常用于流控制。更好的方法是这样的:

function show_error($message) {
echo "Error: $message\n";
}

try {
//some soap stuff
}
catch (SoapFault $sf) {
show_error('Soap Fault');
}
catch (Exception $e) {
show_error($e->getMessage());
}

关于php - 将 php 异常重新抛出到更高级别的 catch block 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6377136/

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