【问题标题】:how to change date format in "zend_log"如何更改“zend_log”中的日期格式
【发布时间】:2013-01-28 17:47:33
【问题描述】:

如何更改 Zend_Log 的日期格式?

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

但我想将此日期格式化为:
"Y-m-d H:i:s ...一些日志消息..."

我的代码如下所示:

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);
    }

}

【问题讨论】:

    标签: php zend-log


    【解决方案1】:

    这可能会解决您的问题:

    $logger->setTimestampFormat("H:i:s");
    但有件事告诉我你已经想通了;)。

    【讨论】:

    • 当然,您需要将格式更新为您真正想要的格式。
    • 是的,这确实解决了我的问题。我没有时间弄明白,这不是一个障碍,所以我只是等着有人回答我的问题。谢谢。
    【解决方案2】:

    对于 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);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-01-11
      • 2018-10-12
      • 2016-03-08
      • 2020-12-17
      • 2020-05-22
      相关资源
      最近更新 更多