我想在执行PHP代码时将消息写入错误日志文件。
我正在尝试使用PHPerror_log()
函数Docs。
但这对我来说无法正常工作。
error_log()
函数可以正常工作,而您并未说出什么对您完全不起作用,因此您的问题尚不清楚。
Answers:
如果您不想更改php.ini文件中的任何内容,那么根据PHP文档,可以执行此操作。
error_log("Error message\n", 3, "/mypath/php.log");
第一个参数是要发送到日志的字符串。第二个参数3
表示期望文件目标。第三个参数是日志文件路径。
error_log("Error message\n")
但是什么也没出现/var/log/httpd/error_log
。:(任何想法为什么?
php.ini
文件中检查error_log配置设置。此设置将保存写入错误的文件名。例如error_log "log_file_name"
。在更多细节php.net/manual/en/function.error-log.php
您可以简单地使用:
error_log("your message");
默认情况下,该消息将发送到php系统记录器。
error_log
php.ini中的指令。
error_log
了……
我们都知道PHP将错误保存在php_errors.log文件中。
但是,该文件包含大量数据。
如果要记录应用程序数据,则需要将其保存到自定义位置。
我们可以在error_log函数中使用两个参数来实现此目的。
http://php.net/manual/zh/function.error-log.php
我们可以使用:
error_log(print_r($v, TRUE), 3, '/var/tmp/errors.log');
哪里,
print_r($v, TRUE) :
将$ v(数组/字符串/对象)记录到日志文件中。
3
:将日志消息放入第三个参数中指定的自定义日志文件。
'/var/tmp/errors.log'
:自定义日志文件(此路径适用于Linux,我们可以根据操作系统指定其他路径)。
或者,您可以使用 file_put_contents()
file_put_contents('/var/tmp/e.log', print_r($v, true), FILE_APPEND);
哪里:
'/var/tmp/errors.log':
自定义日志文件(此路径用于Linux,我们可以根据操作系统指定其他路径)。
print_r($v, TRUE) :
将$ v(数组/字符串/对象)记录到日志文件中。FILE_APPEND:常量参数,指定是否在文件存在时附加到文件,如果文件不存在,则将创建新文件。
您可以使用正常的文件操作来创建错误日志。只需参考并输入以下链接即可: PHP File Handling