如何使用PHP在日志文件中格式化错误日志消息

时间:2011-06-13 10:19:15

标签: php

假设我想在我创建的日志文件中显示sql错误。例如,错误日志文件名为“myerror.log”

现在我使用以下代码在日志文件中打印我的消息,“error_log(mysql_error(),3,”tmp / myerror.log“);”。 所以每次在同一行的myerror.log文件中打印消息时,我想一个接一个地打印消息。

请帮助我 谢谢 Dinesh Kumar Manoharan

2 个答案:

答案 0 :(得分:3)

据我所知,您希望每个条目/消息都在新行上。如果是这样的话:

error_log(mysql_error() . PHP_EOL, 3, "tmp/myerror.log");

如果你想要时间戳,你必须自己添加:

$dt = date('Y-m-d H:i:s', time());
error_log("[{$dt}] " . mysql_error() . PHP_EOL, 3, "tmp/myerror.log");

如果您需要经常使用这种格式,我建议您创建自己的功能(如下所示):

define('MY_ERROR_LOG', 'tmp/myerror.log');

function myErrorLog($message)
{
    $dt = date('Y-m-d H:i:s', time());
    error_log("[{$dt}] " . $message . PHP_EOL, 3, MY_ERROR_LOG);
}
// use it
myErrorLog(mysql_error());

答案 1 :(得分:1)

也许你需要这样的功能:

function error_log($message, $log_file) {
    file_put_contents($log_file, $message . "\n");
}