PHP   发布时间:2022-04-01  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了php – 什么时候错误检查太多了?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
在我的 PHP学习过程中,我一直在尝试阅读错误报告和处理的最佳实践,但语句因人而异,我一直在努力想出一种清晰简洁的方法来处理我的应用程序中的错误.我对可能出错的事情使用异常,但在大多数情况下,我很难理解异常是否应该杀死应用程序并显示错误页面或者只是被捕获并静默处理.

似乎无法回避的事情是,有太多的报道吗?每次你调用一个函数都会出现可怕的错误,这意味着如果你要确认每一个函数调用,你将不得不用if语句填充页面,并找出其中一个失败可能产生的影响.有错误报告的简明文档或想法可以为我清除这一点吗?有最佳做法吗?良好错误处理的最佳示例是什么?

目前我做以下事情:

>如果发生致命错误,请将重要事件结果添加到要记录的数组并通过电子邮件发送给我
>显示致命错误的抽象/一般错误.
>对可能失败的案例使用例外
>在开发环境中打开错误报告,关闭实时环境
>验证所有用户输入数据
>清理无效的用户输入
>向用户显示简明,信息丰富的错误消息,而无需提供利用平台.

解决方法

例外情况是你唯一没有理解的恕我直言:异常意味着你无法控制,意味着被捕获从他们被引入的范围之外被处理.try块有一个特定的限制:它应该包含相关的行动.比如拿一个数据库试试catch块:
$array = array();
try {
    // connect throws exception on fail
    // query throws exception on fail
    // fetch results into $array
} catch (...) {
    $array[0]['default'] = 'me';
    $array[0]['default2'] = ...;
    ...
}

正如您所看到的,我将每个与数据库相关的函数放在try块中.如果连接未通过查询并且未执行提取,则因为没有连接就没有意义.如果查询失败,则跳过提取,因为在获取没有结果时没有任何意义.如果出现任何问题,我有一个空的$数组来处理:所以我可以用默认数据填充它.

使用以下例外:

$array = array();
try {
    if (!file_exists('file.php')) throw new Exception('file does not exists');
    include('file.php');
} catch (Exception $e) {
    trigger_error($e->getMessage());
}

没有意义.它只是一个更长的版本:

if (!file_exists('file.php')) trigger_error('file does not exists');
    include('file.php');

大佬总结

以上是大佬教程为你收集整理的php – 什么时候错误检查太多了?全部内容,希望文章能够帮你解决php – 什么时候错误检查太多了?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签: