我的编程空间,编程开发者的网络收藏夹
学习永远不晚

在 PHP 中记录错误

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

在 PHP 中记录错误

当我们开发任何应用程序(包括 PHP 应用程序)时,记录错误都是必不可少的。 因此,重要的是要知道如何在 PHP 中记录错误,而不是依赖 print_r()var_dump() 来知道什么时候出了问题。

本文将讨论在 PHP 中启用和处理错误日志记录所需的所有函数。

使用 ini_set() 启用 PHP 错误日志

在任何操作之前,打开 php.ini 文件并检查 display_errors 是否设置为 On,如下图所示。

Display 设置为 on

此外,在 php.ini 文件中,您需要检查 error_reporting 条件。 如果您的版本是 PHP 8.1,您可能在 php.ini 文件中会看到 error_reporting = E_ALL & ~E_DEPRECATED & ~E_STRICT 。 但是,为了安全起见,请添加以下行。


error_reporting = E_ALL & ~E_NOTICE
error_reporting = E_ALL & ~E_NOTICE | E_STRICT
error_reporting = E_COMPILE_ERROR|E_RECOVERABLE_ERROR|E_ER… _ERROR
error_reporting = E_ALL & ~E_NOTICE

为了让大家正确记录错误,需要使用 ini_set() 函数来启用错误记录。 此函数允许我们设置配置选项的值,例如错误日志记录选项。

我们可以使用一个选项和一个值在我们的代码库中配置 PHP 错误日志记录。 下面的代码片段向我们展示了所需的选项和值。


ini_set("log_errors", 1);
ini_set("error_log", "/tmp/php-error.log");

如果我们需要在我们的 PHP 脚本中记录错误,我们需要将它们包含在该脚本中。 为了维护 DRY 原则,我们应该创建一个包含上述代码的 PHP 文件,并在我们需要的每个 PHP 中都需要它。


require_once('error.php');

使用 error_log() 在 PHP 中记录错误

现在我们已经配置了 PHP 环境以启用 PHP 错误记录,我们可以使用最重要的 error_log() 函数。

有了这个功能,我们减少了使用 print_r()var_dump() 函数进行调试(尤其是在生产环境中),并创建了特殊的错误模板来让我们知道某些地方工作不正常。

为了展示 error_log() 是如何工作的,我们可以使用该函数来告诉我们读取文件输入操作失败。 在代码片段中,我们使用 file_get_contents() 函数读取 PHP 输入,如果 $data 为空(这将在 NOT 条件下设置为真),则读取 No 文件。 错误语句将被记录。


$data = file_get_contents('php://input');

if (!$data) {
    error_log("No file read. Check input conditions or values.");
}

如果 file_get_contents() 函数没有输入,则代码的输出如下所示。


No file read. Check input conditions or values.

如大家所见,error_log() 函数接受一个消息参数。 除了该参数之外,它还需要一个 message_typedestinationadditional_headers 参数。

不同的日志类型定义了我们将解析为 error_log 函数的整数值;

例如,如果要将错误消息发送到 PHP 系统记录器,则使用 0 作为消息类型。

此外,您可以使用消息类型 3 保存到文件目的地,如以下代码片段所示。


error_log("No file read. Check input conditions or values.", 3, "/my-errors.log");

使用 error_reporting() 在浏览器中记录 PHP 错误

除了 ini_set() 函数之外,我们还可以设置报告哪些 PHP 错误。 error_reporting() 函数可以帮助我们做到这一点。

记住我们创建的错误 PHP 文件是每个需要它的 PHP 文件所必需的; 我们可以在那里添加这个函数及其参数。

  1. 关闭 PHP 代码空间内的所有错误报告。
    
    error_reporting(0);
    
  2. 报告简单的运行错误(致命运行时错误、运行时警告和编译时解析错误)。
    
    error_reporting(E_ERROR | E_WARNING | E_PARSE);
    
  3. 报告未初始化的变量或捕获变量名称拼写错误(运行时通知)。
    
    error_reporting(E_ERROR | E_WARNING | E_PARSE | E_NOTICE);
    
  4. 报告除运行时通知之外的所有错误。
    
    error_reporting(E_ALL & ~E_NOTICE);
    
  5. 报告所有类型的 PHP 错误。
    
    error_reporting(E_ALL);
    error_reporting(-1);
    ini_set('error_reporting', E_ALL);
    

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

在 PHP 中记录错误

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

在 PHP 中记录错误

当我们开发任何应用程序(包括 PHP 应用程序)时,记录错误都是必不可少的。 因此,重要的是要知道如何在 PHP 中记录错误,而不是依赖 print_r() 和 var_dump() 来知道什么时候出了问题。本文将讨论在 PHP 中启用和处
在 PHP 中记录错误
2024-02-27

如何在PHP项目中实现日志记录和错误追踪?

如何在PHP项目中实现日志记录和错误追踪?在开发PHP项目过程中,日志记录和错误追踪是非常重要的功能。通过记录日志,我们可以及时追踪和排查项目中的问题,同时也方便后续的错误分析和修复。本文将介绍如何在PHP项目中实现日志记录和错误追踪的方法
如何在PHP项目中实现日志记录和错误追踪?
2023-11-03

如何在PHP开发中处理异常和错误日志记录?

如何在PHP开发中处理异常和错误日志记录?PHP作为一种非常流行的后端编程语言,广泛应用于Web开发领域。在开发过程中,我们经常需要处理异常和记录错误日志,以便及时发现和解决问题。本文将介绍如何在PHP开发中处理异常和错误日志记录的最佳实践
如何在PHP开发中处理异常和错误日志记录?
2023-11-02

PHP学习笔记:日志记录与错误报告

简介:在开发和维护一个PHP程序时,日志记录和错误报告的功能是至关重要的。通过记录日志,我们可以追踪和调试程序中的问题,并提供一个清晰的错误报告给我们的用户或其他开发人员。本篇文章将介绍如何在PHP程序中实现日志记录和错误报告,并提供一些具
2023-10-21

PHP中封装性的错误报告和日志记录

在PHP开发过程中,错误报告和日志记录是非常重要的,它们能帮助我们及时发现和解决代码中的问题。良好的错误报告和日志记录能够提高开发效率和代码质量。本文将介绍PHP中如何实现封装性的错误报告和日志记录,并提供具体的代码示例。错误报告PHP中有
2023-10-21

PHP 错误日志记录的有效方法?

有效的 php 错误日志记录方法:使用 error_log():记录错误消息到系统日志。使用 psr-3 logger:使用标准化的记录器接口记录不同级别的日志消息。使用 monolog:利用功能丰富的库进行日志格式化、筛选和输出。使用 s
PHP 错误日志记录的有效方法?
2024-05-09

JavaScript throw 语句在错误日志记录中的应用

在 JavaScript 应用程序中,记录错误日志对于调试和故障排除至关重要。throw 语句是记录错误消息并终止程序的一个强大工具。通过在适当的情况下使用 throw 语句,开发人员可以创建更健壮、更可靠的应用程序。
JavaScript throw 语句在错误日志记录中的应用
2024-03-01

PHP 函数中如何进行错误处理和日志记录?

在 php 函数中执行错误处理和日志记录至关重要,可确保应用程序的稳定性和可维护性。错误处理使用 try-catch 块捕获错误,并可通过抛出异常进行处理。日志记录使用 error_log() 函数将错误信息记录到日志文件,以便进行调试。实
PHP 函数中如何进行错误处理和日志记录?
2024-04-26

如何解决PHP开发中的日志记录和错误调试

在PHP开发过程中,日志记录和错误调试是非常重要的环节。合理的日志记录能够帮助我们更好地追踪程序执行过程中的问题,有效地排查错误;而错误调试方法则能够帮助我们迅速定位并解决问题。本文将从日志记录和错误调试两个方面,为大家提供一些解决方案和具
2023-10-21

如何处理PHP开发中的日志记录和错误调试

引言:在PHP开发过程中,日志记录和错误调试是非常重要的环节。良好的日志记录可以方便开发人员追踪代码执行情况、定位问题以及进行性能分析。而错误调试则可以帮助开发人员快速定位和解决代码中的bug。本文将介绍如何在PHP开发过程中进行日志记录和
2023-10-21

PHP开发缓存的错误处理与日志记录

PHP开发缓存的错误处理与日志记录,需要具体代码示例缓存是Web开发过程中非常重要的一个概念,可以显著提高网站或应用程序的性能。在大型应用中,缓存甚至可以是性能瓶颈的决定因素。但是,缓存使用不当还会带来一些问题,包括缓存过期、内存泄漏和缓存
PHP开发缓存的错误处理与日志记录
2023-11-07

如何使用“log/slog”记录错误

问题内容官方文档展示了如何使用新的结构化日志记录包,但似乎省略了如何记录错误。https://pkg.go.dev/log/slogpackage mainimport ("fmt""log/slog""os")func demoF
如何使用“log/slog”记录错误
2024-02-06

在 PHP 中显示所有错误

我们将介绍一种使用 error_reporting() 函数和 ini_set() 函数在 PHP 脚本中显示错误的方法。第一种方法报告错误,而第二种方法覆盖 php.ini 文件或 Apache 配置文件并打开以仅显示当前脚本的错误。我们
在 PHP 中显示所有错误
2024-02-27

怎么在php代码中屏蔽php错误

这篇文章给大家介绍怎么在php代码中屏蔽php错误,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。如何屏蔽PHP错误方法一:@ 屏蔽法@ 在php中一个抑制错误的符号,即便是你开启了报错功能,只要在错误语句之前加上 @
2023-06-15

记录mac端下载android源码过程中的错误

本文主要记录下载过程中的错误,详细的下载过程后续再补上,折腾这些错误折腾了很久,在此记录一下 repo: command not found终端直接输入:echo 'export PATH=$PATH:$HOME/bin' >> ~/.ba
2022-06-06

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录