web - php实际开发怎么处理错误?

WBOY
发布: 2016-06-06 20:12:37
原创
795 人浏览过

比如查找不存在的值,访问模块方法错误,权限不足……各种意想不到的错误。

一访问直接弹出了错误信息,我感觉每次都写个判断条件好麻烦,有没有什么好办法?求教!

回复内容:

比如查找不存在的值,访问模块方法错误,权限不足……各种意想不到的错误。

一访问直接弹出了错误信息,我感觉每次都写个判断条件好麻烦,有没有什么好办法?求教!

如果是程序错误,建议使用 set_error_handlerset_exception_handler 设置一个函数来统一处理错误。

如果是自己设置的权限等错误,可以使用 throw exception 的形式先将错误抛出去,在从外侧接收并作统一处理,就不必在每个错误点写判断和处理了。

楼上几位说的方法都是很正确的。不过对于实际开发最终只有404(无效的url)403(权限不足)是可以接受的,像你说的 访问模块方法错误 就太逗了,这是bug好吗?严格来说你列举的情况都属于bug,上线前必须修复的,有什么需要判断和处理的。

从最终产品的角度看,我们需要识别的是用户录入数据及操作的合法性,当出现问题的时候给出一个友好提示。至于开发期间的bug,修复了不就没有了。

这个得具体例子具体分析,比如你说查找一个数组中不存在的值,常见的可以使用isset判断,但是也可以利用ArrayAccess这个接口去处理,具体用法你只要看一下这个接口就明白了。判断是否错误的调用了一个类中的方法可以用method_exists判断,也可以使用魔术方法去统一处理。还有很多很多错误和方法。具体得看是什么错误,还有对这种错误的容忍程度,去选择不同的方法。有些地方必须用try catch的就必须用,有些错误可以容忍,甚至可以让他直接报一个notice

相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板