php错误、异常捕获机制是不是多此一举
php的异常控制结构try....throw...catch但是这个结构好像并不能自动去捕获错误,还得再期望出错的地方用throw去手动抛出一个错误这不是多此一举么,我如...
php的异常控制结构try....throw...catch
但是这个结构好像并不能自动去捕获错误,还得再期望出错的地方
用throw去手动抛出一个错误
这不是多此一举么,我如果知道哪个地方要出错,我就直接在代码中就处理
为什么还要多此一举用这个结构?
仅仅是为了将错误和内容分离么?
还是我的理解有错误,求指正
补充:
我甚至觉得,这个结构跟错误异常没有任何关系
仅仅就是执行一个简单的跳转功能而已,从try跳转到catch
如果仅仅是为了统一错误处理,用goto不是更简单 展开
但是这个结构好像并不能自动去捕获错误,还得再期望出错的地方
用throw去手动抛出一个错误
这不是多此一举么,我如果知道哪个地方要出错,我就直接在代码中就处理
为什么还要多此一举用这个结构?
仅仅是为了将错误和内容分离么?
还是我的理解有错误,求指正
补充:
我甚至觉得,这个结构跟错误异常没有任何关系
仅仅就是执行一个简单的跳转功能而已,从try跳转到catch
如果仅仅是为了统一错误处理,用goto不是更简单 展开
6个回答
2014-10-13
展开全部
//确实有点多此一举,给你一段代码,自己运行看看.
set_error_handler('my');
echo $a; //抛出一个变量未定义错误
function my($a,$b){
echo "错误号是$a:"."<Br/>";
echo "错误描述$b:"."<Br/>";
}
追问
其实try结构是抛异常的
异常和错误是有区别的
你给的代码捕获的是错误
我认为这才是真正有意义的错误处理
追答
应该还是有一定的意义的,只是很少用到而已.
一般使用的都是set_error_handler函数,比如thinkphp框架.
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
实际应用中,有时在某个地方报错是完全可以忽略的时候,直接可以用这个来禁掉报错
有时排查错误,不知道在哪报错时,可以用这个,一般的框架都会有禁掉错误提示的
有时排查错误,不知道在哪报错时,可以用这个,一般的框架都会有禁掉错误提示的
追问
1、用这个结构来禁掉报错是什么意思
2、排查错误,为什么会不知道在哪里报错?系统自带的错误信息不是有提示么?
能不能详细解释下,谢谢
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
报错机制是为了统一处理错误信息
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
异常可以统一的到接受报错啊,你就不需要每个,你不停的throw错误,往下写代码,在代码最后catch一次,就会统一报错,我感觉这机制挺好
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2014-10-11
展开全部
如果你知道哪个地方要出错,就不需要try catch了
如果你不确定会出错,而当运行网站的时候某个操作出现了错误,那么throw能指引你快速找到错误
如果你不确定会出错,而当运行网站的时候某个操作出现了错误,那么throw能指引你快速找到错误
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询