php中trycatch的用法,如何有效地使用PHP中的try…catch块

我一直在PHP代码中使用try..catch块,但不确定是否已正确使用它们。

例如,我的一些代码如下所示:

try {

$tableAresults = $dbHandler->doSomethingWithTableA();

$tableBresults = $dbHandler->doSomethingElseWithTableB();

} catch (Exception $e) {

return $e;

}

因此,我将多个数据库操作分组在同一try / catch块中,因为如果任何事务中发生任何异常,我将能够处理它。

我这样做是因为我认为它比:

try {

$tableAresults = $dbHandler->doSomethingWithTableA();

} catch (Exception $e) {

return $e;

}

try {

$tableBresults = $dbHandler->doSomethingWithTableB();

} catch (Exception $e) {

return $e;

}

虽然,我不确定我在做什么是好的习惯还是只是捕获异常的一种懒惰方式。

我的假设是,仅当异常需要特殊处理时,它才应具有自己的try / catch块,否则将它们分组在同一try / catch中应该可以。

所以我的问题是:

每个数据库事务使用try / catch块有什么好处?还是仍然可以将多个数据库事务分组在同一个try / catch块中而没有任何问题?

可以嵌套try / catch块吗?谢谢!

编辑

return语句主要仅用于演示目的,但我也使用return,catch()因为我正在对该方法发出AJAX请求,而Javascript期望使用JSON对象,那么如果发生异常,我将返回一个空的JSON编码数组。我只是认为它不会为在示例中添加特定代码带来任何价值。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值