首页  >  文章  >  后端开发  >  PHP 日志错误

PHP 日志错误

PHPz
PHPz原创
2024-08-29 13:06:20298浏览

PHP 编程语言提供了一种不同类型的错误日志记录,以便在应用程序/程序运行并返回错误时识别错误的严重性。 PHP Log Errors 将告诉您编程脚本的错误消息是否记录到服务器错误日志中。此选项主要是特定于服务器的。最好使用错误日志概念来代替大多数生产网站上的错误显示。

开始您的免费软件开发课程

网络开发、编程语言、软件测试及其他

语法和参数

php日志错误的语法和参数如下:

语法:

error_log(message1, message_type1, destination, extra_headers)

参数

在上面的语法中,提到了 4 个参数。您将在下面获得这些参数的详细信息:

messages:Message1 参数是包含要记录的错误消息的变量。它不是可选的。它是 error_log() 函数的主要关键组件。该参数大部分时候都是字符串类型值。

message_type1:Message_type1 参数将指定一个/多个错误应该去的位置。查看下面参数的代码,以便您更好地理解。

  1. message_type1参数的代码1会将消息发送到PHP sys logger(PHP系统记录器)。
  2. message_type1 参数的代码 2 会将消息发送到目的地中提到的指定电子邮件地址。
  3. message_type1 参数的代码 3 将起作用并仅通过特定的 PHP 调试连接发送消息,但只有在启用远程调试时才会完成。
  4. message_type1 参数的代码 4 有助于附加目标中实际指定的文件。
  5. Message_type1 参数在 error_log() 函数中始终是可选的。该参数仅接受上面提到的整数类型的值/代码。
  • 目的地:目的地参数有助于指定错误消息应发送的地址/位置。位置可以是文件或电子邮件地址。它是可选参数。大家可以根据需要来使用。它是资源类型值。
  • extra_headers: Extra_headers 参数仅在“message_type1”值/代码为“1”时使用。它也是可选参数。如果您不想,可以像其他一些可选参数一样忽略它。是字符串类型值。

PHP 日志错误功能如何工作?

PHP 日志错误功能基于检查程序的错误消息,这些错误消息应记录到服务器错误日志(error_log())中。 PHP 逻辑错误在服务器中起作用,因为它是特定于服务器的。它无需设置 log_errors 的最大长度(以字节为单位)即可工作。在 error_log() 中,添加源信息,默认为 1024,如果根本不应用最大长度,则为 0。这是将应用于记录的错误的长度。最大长度也适用于显示的错误以及“$php_errormsg”,但未明确调用 error_log() 函数。

为了更好地工作,PHP 日志错误值应更改为 0 值,作为面向 Web 的服务器的安全措施。如果设置为Syslog,它还会将错误发送到sys log(系统日志)。 PHP 中的错误和警告可以通过使用 PHP 程序/脚本以及更改 php.ini 文件的配置来记录到该文件中。这可以通过使用两种方法来完成。

方法一

要将错误消息发送到所需文件,您必须使用“error_log()” 函数。我们传递给 error_log() 函数的第一个参数将是要发送的错误消息。第二个参数将告诉我们在哪里记录/发送错误消息。这里 2nd 参数将设置为值 3,用于将错误消息重定向到文件。第三个参数将用于指定错误日志文件的文件路径。

方法二

来到第二种方法,init_set()函数将允许用户以编程方式和系统地更新PHP.INI文件的配置。要在 php 中启用错误日志记录,将添加 ini_set(“log_errors”,TRUE) 命令。同样设置错误日志文件“ini_set(‘error_log’,$log_file)”命令将添加到 PHP 编程脚本中。为了将错误消息记录到所需的文件中,将使用“error_log($error_message)”函数调用。

在 PHP 中实现日志错误的示例

php 日志错误示例如下:

Example #1

This is the example of implementing the approach one which is mentioned above. This is a php code that is used to log the error into the wanted file/ the given file. In the below code, a variable called “$error_message1” is created with the string value. Then a variable “$log_file1” is created to name the file while it is to be created. Now the main function “error_log()” will come into existence. The first-term inside of the error_log() function is the error text and the last term of the error_log() is to create the specific file on the specific path with “.log” extension to the text file. In the PHP compiler, there will be no output because it is an error concept. The output which I am showing is in the self-created .log text file.

Code:

<?php
$error_message1 = "This is an error message!";
$log_file1 = "./my-errors.log";
error_log($error_message1, 3, $log_file1);
?>

Output:

PHP 日志错误

Example #2

This is the example of implementing the approach two concepts. In the below PHP script, an error is logged into the wanted file. In the code, a string variable is created at first to show the text in the file. Then again a new variable is created to name the specific file which is to be created further. Then setting the error logging is done to be active by using the 1st ini_set(). Then the second time, ini_set() function is used to set the log file in the php.ini configuration. Then error_log() function is used with only one parameter which is nothing but the variable’s value (string text). The text will be displayed in the .log text file.

Code:

<?php
$error_message1 = "Here it is an error message generated itself from the php code!!!";
$log_file2 = "./my-errors.log";
ini_set("log_errors", TRUE);
ini_set('error_log', $log_file2);
error_log($error_message1);
?>

Output:

PHP 日志错误

以上是PHP 日志错误的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn