首页 > 知识问答文章正文

PHP如何自定义错误处理

知识问答 2022-03-09 06:44:13 admin

在做php开发时,我们开发的程序有时会出错,也许是代码的问题,又或者是用户输入的数据有问题,如果我们不对错误做定制,php就会显示一个比较丑陋的错误提示,而且会暴露我们的程序信息。那么我们该如何自定义错误处理?

操作方法

【步骤01】

先看下PHP默认的错误提示,我们先写一个有问题的代码,除法运算我们除以0,大家都知道除法是不能除0的,程序也知道这个规则,所以它会报错。

【步骤02】

页面运行后,显示了一个丑陋的错误信息,而且把代码文件给暴露出来了。

【步骤03】

我们应该避免这种情况,自定义错误处理,让出错信息更友善。
可以调用php的set_error_handler函数,这个函数接收一个字符串参数,指明一个函数来自定义错误处理。

【步骤04】

接着我们来定义这个错误处理的函数。
displayError函数里,我们重新对错误信息进行了包装输出。根据不同级别($errorNo)的错误,显示不同的信息。

【步骤05】

现在再次运行页面,看下报错信息是怎样显示的。
如图,可以看到现在的报错信息比较友善了。
(你可以对这个报错信息做更美观的设计,这里只做示例。)

【步骤06】

除了程序在执行时发现问题,触发错误外,我们还可以自己触发错误处理。比如是业务逻辑上的问题,而不是代码问题,我们也可以触发错误处理。
调用php的trigger_error函数就可以了,这个函数接收二个参数,第一个是错误信息,第二个是错误的级别。代码如图

【步骤07】

运行后,看下现在的报错信息,如图,成功触发了错误处理。

标签:

发表评论

评论列表

可盼网Copyright @ 2011-2024 All Rights Reserved. |版权所有 备案号: 豫ICP备2022006457号-8