如何在“zend_log”中更改日期格式

时间:2013-01-28 17:47:33

标签: php zend-log

如何更改Zend_Log的日期格式?

现在每个新日志条目前都有添加时间戳的日期:
“2013-01-28T16:47:54 + 01:00 ......一些日志消息......”

但我想将此日期格式化为:
“Y-m-d H:我:......有些日志信息......”

我的代码如下所示:

class Game_Logger {

    public function __construct($val, $txt = null) {
        $writer = new Zend_Log_Writer_Stream(APPLICATION_PATH . '/../log/log.log');
        $logger = new Zend_Log($writer);
        if (is_array($val)) {
            $output = Zend_Debug::dump($val, null, false);
        } else {
            $output = $val;
        }
        if($txt){
            $output = $txt.' '.$output;
        }
        $logger->info($output);
    }

}

2 个答案:

答案 0 :(得分:6)

这可能会解决您的问题:

$logger->setTimestampFormat("H:i:s");
但有些东西告诉我你已经弄明白了;)。

答案 1 :(得分:1)

对于Zend Framework 2和3,以下代码可能会有所帮助

    $logger = new \Zend\Log\Logger();

    $formatter = new  \Zend\Log\Formatter\Simple();
    $formatter->setDateTimeFormat('Y-m-d'); // as per your choice

    $writer = new \Zend\Log\Writer\Stream('php://output');
    $writer->setFormatter($formatter);
    $logger->addWriter($writer);