如何写入PHP中的错误日志文件
如果您不想在php.ini文件中更改任何内容,请按照PHP documentation的说法操作。
error_log("Error message\n", 3, "/mypath/php.log");
第一个参数是要发送到日志的字符串。第二个参数3
表示预期文件目标。第三个参数是日志文件路径。
我只是在做'error_log(“错误信息\ n”) '但是没有任何内容出现在'/ var/log/httpd/error_log'中。 :(任何想法为什么? – trusktr 2013-06-01 18:16:56
在'php.ini'文件中检查error_log配置设置,该设置将保存写入错误的文件名,例如'error_log“log_file_name”'。 net/manual/en/function.error-log.php – suspectus 2013-06-02 19:17:06
关于此的教程:http://code2real.blogspot.in/2015/06/php-generate-log-messages-and-save-to.html – Pupil 2015-07-16 03:59:50
,你可以简单地使用:
error_log("your message");
默认情况下,该消息将被发送到PHP的系统日志。
如果你使用这种方法,确保错误日志记录已打开,并且您取消注释php.ini中的error_log指令 – 2014-04-24 14:58:21
-1用于提示,在问题提出后一年,OP已经说过他尝试了什么,但是不是为他工作的,而且在嫌疑人已经有了一个更好的答案,在这个答案前一年创建。 – ToolmakerSteve 2014-08-17 18:42:56
@ToolmakerSteve,这也是一个不错的选择 – Pacerier 2015-03-25 15:16:19
对于WAMP服务器仅3.0用户:
你必须要在C:\wamp64\bin\php\php[5.*/7.*]\phpForApache.ini
取消注释修改此行:
log_errors = On
error_log = "c:/wamp/logs/php_error.log"
检查出你的记录在类似样的路径,因为我有提到这里:
c:/wamp/logs/php_error.log
还要确保'log_errors = on' – ToolmakerSteve 2016-08-05 19:40:29
大家都知道PHP保存错误php_errors.log文件。
但是,该文件包含大量数据。
如果我们想记录我们的应用程序数据,我们需要将它保存到自定义位置。
我们可以在error_log函数中使用两个参数来实现这一点。
http://php.net/manual/en/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,我们可以根据OS指定其他路径)。
或者,你可以使用file_put_contents()
file_put_contents('/var/tmp/e.log', print_r($v, true), FILE_APPEND);
其中:
'/var/tmp/errors.log':
自定义日志文件(此路径是Linux,我们可以根据OS指定其他)。 print_r($v, TRUE) :
将$ v(数组/字符串/对象)记录到日志文件。 FILE_APPEND:常量参数,指定是否附加到文件,如果文件不存在,则会创建新文件。
你是什么意思,“它不能正常工作” – 2013-03-20 17:02:40
告诉我们[你有什么尝试](http://www.whathaveyoutried.com)。告诉使用你得到的和你期望发生的事情。 – UnholyRanger 2013-03-20 17:02:52
请显示您的代码,告诉您预期会发生什么,并描述发生了什么。通常,'error_log()'函数可以正常工作,而且你没有说过什么不适合你,所以你的问题不清楚。 – hakre 2013-03-20 17:06:52