返回顶部
首页 > 资讯 > 后端开发 > PHP编程 >在 PHP 中记录错误
  • 893
分享到

在 PHP 中记录错误

2024-02-27 20:02:33 893人浏览 安东尼
摘要

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

当我们开发任何应用程序(包括 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);
    

--结束END--

本文标题: 在 PHP 中记录错误

本文链接: https://lsjlt.com/news/569072.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • 在 PHP 中记录错误
    当我们开发任何应用程序(包括 PHP 应用程序)时,记录错误都是必不可少的。 因此,重要的是要知道如何在 PHP 中记录错误,而不是依赖 print_r() 和 var_dump() 来知道什么时候出了...
    99+
    2024-02-27
  • 如何在PHP开发中处理异常和错误日志记录?
    如何在PHP开发中处理异常和错误日志记录?PHP作为一种非常流行的后端编程语言,广泛应用于Web开发领域。在开发过程中,我们经常需要处理异常和记录错误日志,以便及时发现和解决问题。本文将介绍如何在PHP开发中处理异常和错误日志记录的最佳实践...
    99+
    2023-11-02
    异常处理 (Exception Handling) PHP开发 (PHP development) 错误日志记录 (Er
  • 如何在PHP项目中实现日志记录和错误追踪?
    如何在PHP项目中实现日志记录和错误追踪?在开发PHP项目过程中,日志记录和错误追踪是非常重要的功能。通过记录日志,我们可以及时追踪和排查项目中的问题,同时也方便后续的错误分析和修复。本文将介绍如何在PHP项目中实现日志记录和错误追踪的方法...
    99+
    2023-11-03
    日志记录 PHP项目 错误追踪
  • PHP学习笔记:日志记录与错误报告
    简介:在开发和维护一个PHP程序时,日志记录和错误报告的功能是至关重要的。通过记录日志,我们可以追踪和调试程序中的问题,并提供一个清晰的错误报告给我们的用户或其他开发人员。本篇文章将介绍如何在PHP程序中实现日志记录和错误报告,并提供一些具...
    99+
    2023-10-21
    PHP 日志记录 错误报告
  • PHP 错误日志记录的有效方法?
    有效的 php 错误日志记录方法:使用 error_log():记录错误消息到系统日志。使用 psr-3 logger:使用标准化的记录器接口记录不同级别的日志消息。使用 monolog...
    99+
    2024-05-09
    php 错误日志记录
  • PHP中封装性的错误报告和日志记录
    在PHP开发过程中,错误报告和日志记录是非常重要的,它们能帮助我们及时发现和解决代码中的问题。良好的错误报告和日志记录能够提高开发效率和代码质量。本文将介绍PHP中如何实现封装性的错误报告和日志记录,并提供具体的代码示例。错误报告PHP中有...
    99+
    2023-10-21
    日志记录 错误报告 封装性
  • JavaScript throw 语句在错误日志记录中的应用
    使用 throw 语句记录错误的优势包括: 可定制的错误消息:throw 语句允许开发人员指定自定义的错误消息,这有助于更好地识别和诊断错误。 错误终止:throw 语句会导致程序终止,这有助于防止应用程序继续执行并产生不可预料的结果。...
    99+
    2024-03-01
    Keywords: JavaScript, Throw, Error Logging, Debugging, Reliability JavaScript throw 语句可以用来引发错误 并允许开
  • PHP 函数中如何进行错误处理和日志记录?
    在 php 函数中执行错误处理和日志记录至关重要,可确保应用程序的稳定性和可维护性。错误处理使用 try-catch 块捕获错误,并可通过抛出异常进行处理。日志记录使用 error_lo...
    99+
    2024-04-26
    错误处理 日志记录
  • 在PHP和Bash中使用日志记录:如何轻松诊断和修复错误?
    在开发和维护一个应用程序时,出现错误是不可避免的。为了更好地诊断和修复这些错误,我们需要使用一些工具来记录应用程序的运行情况和错误信息。其中,日志记录是一个非常重要的工具。本文将介绍如何在PHP和Bash中使用日志记录来轻松诊断和修复错误...
    99+
    2023-09-01
    bash 日志 http
  • 如何处理PHP开发中的日志记录和错误调试
    引言:在PHP开发过程中,日志记录和错误调试是非常重要的环节。良好的日志记录可以方便开发人员追踪代码执行情况、定位问题以及进行性能分析。而错误调试则可以帮助开发人员快速定位和解决代码中的bug。本文将介绍如何在PHP开发过程中进行日志记录和...
    99+
    2023-10-21
    PHP开发 (PHP development) 日志记录 (Logging) 错误调试 (Debugging)
  • 如何解决PHP开发中的日志记录和错误调试
    在PHP开发过程中,日志记录和错误调试是非常重要的环节。合理的日志记录能够帮助我们更好地追踪程序执行过程中的问题,有效地排查错误;而错误调试方法则能够帮助我们迅速定位并解决问题。本文将从日志记录和错误调试两个方面,为大家提供一些解决方案和具...
    99+
    2023-10-21
    错误调试 PHP开发 日志记录
  • PHP开发缓存的错误处理与日志记录
    PHP开发缓存的错误处理与日志记录,需要具体代码示例缓存是Web开发过程中非常重要的一个概念,可以显著提高网站或应用程序的性能。在大型应用中,缓存甚至可以是性能瓶颈的决定因素。但是,缓存使用不当还会带来一些问题,包括缓存过期、内存泄漏和缓存...
    99+
    2023-11-07
    错误日志记录 PHP开发 缓存处理
  • nodejs的错误处理过程记录
    本文以连接错误ECONNREFUSED为例,看看nodejs对错误处理的过程。 假设我们有以下代码 1. const net = require('net'); 2. n...
    99+
    2024-04-02
  • 如何使用“log/slog”记录错误
    问题内容 官方文档展示了如何使用新的结构化日志记录包,但似乎省略了如何记录错误。 https://pkg.go.dev/log/slog package main import ( ...
    99+
    2024-02-06
  • 在 PHP 中显示所有错误
    我们将介绍一种使用 error_reporting() 函数和 ini_set() 函数在 PHP 脚本中显示错误的方法。第一种方法报告错误,而第二种方法覆盖 php.ini 文件或 Apache 配置...
    99+
    2024-02-27
  • Python开发中,如何在日志记录中实现精准的错误追踪?
    在Python开发中,日志记录是非常重要的一环。通过日志记录,我们可以了解程序的运行状态,排查问题,提高代码的可维护性和可读性。而在日志记录中,如何实现精准的错误追踪也是非常关键的。本文将介绍如何在Python开发中,在日志记录中实现精准...
    99+
    2023-10-13
    日志 开发技术 二维码
  • 怎么在php代码中屏蔽php错误
    这篇文章给大家介绍怎么在php代码中屏蔽php错误,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。如何屏蔽PHP错误方法一:@ 屏蔽法@ 在php中一个抑制错误的符号,即便是你开启了报错功能,只要在错误语句之前加上 @ ...
    99+
    2023-06-15
  • 学习 PHP:如何在笔记中记录开发技术?
    PHP是一种流行的服务器端编程语言,它被广泛用于开发Web应用程序。对于那些刚开始学习PHP的人来说,如何记录和整理学习笔记是一个非常重要的问题。在本文中,我们将介绍一些关于如何在笔记中记录PHP开发技术的技巧和建议。 使用Markdo...
    99+
    2023-09-02
    学习笔记 开发技术 存储
  • 如何在学习笔记中记录 PHP 文件缓存?
    PHP 文件缓存是一种提高 PHP 应用程序性能的有效方式。当 PHP 应用程序需要频繁读取相同的文件时,使用文件缓存可以避免每次都从磁盘读取文件,从而加快应用程序的响应时间。在学习 PHP 编程的过程中,如何记录 PHP 文件缓存的使用...
    99+
    2023-07-05
    文件 学习笔记 缓存
  • 记录mac端下载android源码过程中的错误
    本文主要记录下载过程中的错误,详细的下载过程后续再补上,折腾这些错误折腾了很久,在此记录一下 repo: command not found       终端直接输入:    ...
    99+
    2022-06-06
    mac Android
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作