try-catch - PHP 抛出异常问题
本文介绍了try-catch - PHP 抛出异常问题的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问 题
<?php
$obj = new demo;
$obj->index();
class demo{
public function index()
{
try {
$arr = [1,2,3];
array_walk($arr, function($value,$key){
array_walk([2,3,5], function(){
//这里的闭包无法使用$this
但是代码异常,没有走到catch
$this->test();
});
});
} catch (Exception $e) {
echo 23;
}
}
public function test($i)
{
echo $i;
}
}
上面代码异常了,但是为什么没有走catch 分支呢???
解决方案
这属于error
,try catch
只捕获异常,不处理error
try catch
是处理除0
和属性重复
这些可预见的异常情况,语法错误检查这种事情它是做不到的,也不需要它做,就算它捕捉到了你需要他做什么呢?说代码出错了吗?error
这种报错需要去log
里面看
这篇关于try-catch - PHP 抛出异常问题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文