加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

PHP – 通用用户友好错误消息

发布时间:2020-12-13 16:50:43 所属栏目:PHP教程 来源:网络整理
导读:目前,我的 PHP页面上有以下内容: error_reporting( E_ALL | E_STRICT );ini_set('display_errors',1); 当出现问题时,是否有推荐的方法用更友好的消息替换它?但同时,在服务器某处记录错误? 因此,我只希望用户知道某些内容出错,而不是显示完整的错误消息,并
目前,我的 PHP页面上有以下内容:

error_reporting( E_ALL | E_STRICT );
ini_set('display_errors',1);

当出现问题时,是否有推荐的方法用更友好的消息替换它?但同时,在服务器某处记录错误?

因此,我只希望用户知道某些内容出错,而不是显示完整的错误消息,并且会尽快更正.发生的完整错误记录在后台而不显示给用户.

解决方法

错误来自两个来源:

>您的剧本处于您没有预料到的情境中.
>你的脚本无法控制的东西是错误的.

第一种错误来自程序中的错误,需要在那里修复.例如:

>在非对象上调用方法(例如在字符串或int上)
>将错误类型的参数传递给函数(例如将bool传递给mysqli_query).

在开发系统上,启用display_errors没有任何问题.在生产服务器上,关闭display_errors并改为启用log_errors.这会将错误记录到Web服务器的日志中.通过实现自己的错误处理程序并将其注册到set_error_handler,可以实现更复杂的方法来处理错误.

第二种错误超出了脚本的控制范围,因此您的脚本必须准备好优雅地处理它们.例如:

>数据库系统已关闭.
>您尝试访问的文件不存在.

要处理这些错误,请阅读您使用的每个功能和方法的文档,确定呼叫何时失败并采取相应措施. Exceptions可能会帮助你.

不适当地处理第二类错误通常会导致第一类错误.例如,如果不检查mysqli_connect是否实际建立了数据库连接(第二种错误),则对mysqli_query的以下调用将产生第一种错误.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读