gpt4 book ai didi

php - PHP 中的应用程序错误与用户错误

转载 作者:塔克拉玛干 更新时间:2023-11-03 05:46:04 25 4
gpt4 key购买 nike

因此,经过反复讨论,我想出了我认为可能是处理应用程序/系统错误与用户错误(即验证问题、权限问题等)的有效计划.

应用程序/系统错误将使用自定义错误处理程序(通过 set_error_handler())处理。根据错误的严重程度,用户可能会被重定向到一般错误页面(即 fatal error ),或者错误可能会被简单地记录下来(即 E_WARNING)。

这些错误很可能是由用户无法控制的问题(丢失文件、错误逻辑等)引起的。

第二组错误是用户生成的错误。这些可能不会自动触发错误,但会被视为一个错误。在这些情况下,我决定使用 trigger_error() 函数,通常会抛出一个警告或通知,错误处理程序会默默地记录下来。之后,由开发人员将用户重定向到另一个页面或显示向用户传达某种更有意义的信息。

这样一来,任何类型的错误都会被记录下来,但用户错误仍然允许开发人员以自己的方式自由处理。 IE。将他们重定向回他们的表单,并完全重新填充它并显示出错的消息。

有没有人看出这有什么问题,或者有更直观的方法?我的错误处理方法通常是每个人都有自己的方法,但必须有一种方法。

最佳答案

我真的更喜欢exceptionsold-fashion error handling .优点包括:

  • 您可以延迟错误处理:无需在错误发生的那一刻做出决定(停止或继续、显示消息或日志)。这允许更清晰的代码和更清晰的输出(您不能总是在进行 fopen 调用时打印消息)。

  • 您可以将类似的错误分组并统一处理。例如:当您读取一个文件时,有许多可能的错误情况,您真的不需要单独考虑它们。

  • 您可以为您描述的属于正常工作流程一部分的错误情况创建自定义异常(exception);将 UserNotAllowedExceptionE_USER_ERROR 进行比较。

convert regular errors to exceptions 还有一些技巧.

关于php - PHP 中的应用程序错误与用户错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2523945/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com