php使用require once记录错误

php使用require once记录错误,php,logging,error-handling,require-once,Php,Logging,Error Handling,Require Once,我在php脚本中使用过require_一次,我想知道编写代码的正确方法,以便在失败时处理错误 目前,我只使用require_一次('included_file.php'); 我想用这个: if (!@require_once('included_file.php')){ //log error, print nice error message, and exit; } 这是“良好实践”,还是有其他/更好的方法。我已经阅读了这一页()并了解了OR DIE的用法,但我不确定最好的方法是什么 谢谢

我在php脚本中使用过require_一次,我想知道编写代码的正确方法,以便在失败时处理错误

目前,我只使用require_一次('included_file.php'); 我想用这个:

if (!@require_once('included_file.php')){
//log error, print nice error message, and exit;
}
这是“良好实践”,还是有其他/更好的方法。我已经阅读了这一页()并了解了OR DIE的用法,但我不确定最好的方法是什么


谢谢

require\u一次
将触发
编译
错误。因此,执行将停止,自定义日志记录将无法跟上速度

有关
require


require\u一次
将触发
编译
错误。因此,执行将停止,自定义日志记录将无法跟上速度

有关
require


包含file using required_一次意味着如果脚本无法加载给定文件,它将停止执行。在某些条件下使用require_一次是很好的。它取决于包含文件的重要性

包含file using required_一次意味着脚本将在无法加载给定文件时停止执行。在某些条件下使用require_一次是很好的。它取决于包含文件的重要性

如果
require*
调用失败,脚本将立即停止,不会执行其他代码。您无法优雅地处理
require\u一次
错误。如果PHP进程失败,您可以将web服务器配置为使用错误页面处理它。否则,您将不得不基本上使用正在显示的代码,但只需使用一次
include\u
。您不应使用
@
来抑制产生的错误,而应关闭错误显示,以便记录错误


说到这里,您应该使用
require*
来处理脚本运行所需的文件。您甚至不应该编写任何附加代码来处理这些文件不可用的情况,因为这意味着您的应用程序处于完全不可用的状态。如果所需的所有文件都不存在,则应用程序甚至不应部署到生产服务器,因此不需要任何优雅的错误处理。有些错误你真的想打你的脸;缺少关键文件就是其中之一。

如果
require*
调用失败,脚本将立即停止,不会执行其他代码。您无法优雅地处理
require\u一次
错误。如果PHP进程失败,您可以将web服务器配置为使用错误页面处理它。否则,您将不得不基本上使用正在显示的代码,但只需使用一次
include\u
。您不应使用
@
来抑制产生的错误,而应关闭错误显示,以便记录错误


说到这里,您应该使用
require*
来处理脚本运行所需的文件。您甚至不应该编写任何附加代码来处理这些文件不可用的情况,因为这意味着您的应用程序处于完全不可用的状态。如果所需的所有文件都不存在,则应用程序甚至不应部署到生产服务器,因此不需要任何优雅的错误处理。有些错误你真的想打你的脸;缺少关键文件是其中之一。

好的-最初的想法是PHP已经处理了您想要的2/3的内容-记录致命错误并在所需文件无法加载时退出。听起来真正的问题只是你想要一个“漂亮”的错误页面——这个页面有一个关于如何设置的很好的演练——

好吧——最初的想法是PHP已经在处理你想要的2/3的错误——记录致命错误并在所需文件加载失败时退出。听起来真正的问题只是你想要一个“漂亮”的错误页面——这个页面有一个很好的关于如何设置的演练——

Nice!!我要试一试。我也在看这篇文章:耶-我还想从那篇文章中推荐另一个答案,我在过去使用过自定义错误处理程序,这也可能完成一些你想要的-很好!!我要试一试。我也在看这篇文章:是的,我还想从那篇文章中推荐另一个答案,我在过去使用了自定义错误处理程序,这可能也完成了您所寻找的一些任务。我的一些脚本提供了图像,提供了json提要等。所以输出错误的方法非常重要。你所有的观点都很有道理,非常感谢你的详细回答。我的一些脚本提供了图像,提供了json提要等。因此输出错误的方法非常重要。你所有的观点都很有道理,非常感谢你的详细回答。
require is identical to include except upon failure it will also produce a fatal
E_COMPILE_ERROR level error. In other words, it will halt the script whereas
include only emits a warning (E_WARNING) which allows the script to continue.