当数字除以零时,尝试在Laravel 5.6中不起作用[重复]

问题描述 投票:0回答:2

尝试catch块无法阻止我的Laravel代码中的运行时异常。我编写了以下代码来测试异常处理:

try{
    $a=112/0;
}catch(Exception $e){
    $a=99;
}

但是它返回运行时错误。请帮我解决问题。Run time exception

php laravel laravel-5 exception php-7
2个回答
1
投票

因为您使用的是php7,所以需要使用Throwable来捕获这样的异常:

try{
    $a=112/0;
}catch(Exception $e){
    // For php 5
    $a=99;
} catch(\Throwable $e) {
// For php7
    $a=99;
}

1
投票

尝试一下:

try{
    $a=112/0;
}catch(\Exception $e){
    $a=99;
}

\之前注意Exception

更新:正如@Qirel所建议的:

您可以简单地更新代码来执行此操作而无需尝试/捕获:

if($d === 0){
    $a = 99;
} else{
    $a = 112/$d
}
© www.soinside.com 2019 - 2024. All rights reserved.