Zend framework 为什么Zend#u Log#u Writer#u Firebug可以';t记录来自dispatchLoopShutdown插件的消息?
为什么日志可以从dispatchLoopShutdown插件发送,因为它发生在Zend\u Controller\u Response\u Abstract->sendResponse()之前,而且还没有发送任何头文件 我在引导程序中初始化记录器资源Zend framework 为什么Zend#u Log#u Writer#u Firebug可以';t记录来自dispatchLoopShutdown插件的消息?,zend-framework,plugins,zend-log,Zend Framework,Plugins,Zend Log,为什么日志可以从dispatchLoopShutdown插件发送,因为它发生在Zend\u Controller\u Response\u Abstract->sendResponse()之前,而且还没有发送任何头文件 我在引导程序中初始化记录器资源 protected function _initLogger() { $writer = new Zend_Log_Writer_Firebug(); $logger = new Zend_Log($writer);
protected function _initLogger()
{
$writer = new Zend_Log_Writer_Firebug();
$logger = new Zend_Log($writer);
Zend_Registry::set('logger', $logger);
return $logger;
}
在任何地方使用它
Zend_Registry::get('logger')->debug('test');
它工作到dispatchLoopShutdown插件执行点…好的,Firebug编写器在dispatchLoopShutdown中有自己的插件,用于在响应中注入数据。您应该添加优先级较低的插件(请参阅手册)。
Zend_Log_Writer_Firebug
本身在第一次运行时注册其dispatchLoopShutdown
插件(dLSp
),因此要使此记录器在dLSp
中工作,您需要Zend_Log_Writer_Firebug
的dLSp
(Zend\u Wildfire\u Channel\u HttpHeaders
)在调用dLSp
中的记录器之前已注册。例如,您可以通过在引导程序中调用$logger->log(“”)
来实现此目的
protected function _initLogger()
{
$writer = new Zend_Log_Writer_Firebug();
$logger = new Zend_Log($writer);
Zend_Registry::set('logger', $logger);
return $logger;
}