我正在使用Zend 1.12。
我想知道这个解决方案是否有效。我想为当前登录的用户添加用户名或用户ID。
在我的Bootstrap文件中,我有:
protected function _initLogger(){
$dt=new DateTime();
$writer = new Zend_Log_Writer_Stream(ROOT_DIR.'/logs/log'.$dt->format('Y-m-d').'.txt','a+');
$logger = new Zend_Log($writer);
Zend_Registry::set('logger', $logger);
}
我不确定这一点,但如果我将其更改为:
protected function _initLogger(){
$dt=new DateTime();
$writer = new Zend_Log_Writer_Stream(ROOT_DIR.'/logs/log'.$dt->format('Y-m-d').'.txt','a+');
$format = '%uid% %username% %timestamp% %priorityName% (%priority%): %message%' . PHP_EOL;
$writer->setFormatter(new Zend_Log_Formatter_Simple($format));
$logger = new Zend_Log($writer);
$session=new Zend_Session_Namespace('Default');
if(isset($session->user)){
$logger->setEventItem('username', $user->username);
$logger->setEventItem('uid', $user->userid);
}
Zend_Registry::set('logger', $logger);
}
当mutliple用户同时工作时,这会有用吗?据我所知,Zend_Registry是应用程序范围(静态),因此适用于会话。
有没有人可以替代?