如何使用Zend_Application_Bootstrap创建全局Zend_Log

时间:2009-10-11 07:31:41

标签: zend-framework zend-log zend-app-bootstrap

我想创建一个全局Zend_Log对象,我可以从控制器和模型中找到它。

我应该在Bootstrap中添加什么? (我的引导程序扩展了Zend_Application_Bootstrap

如何从控制器操作和模型中获取记录器对象?

1 个答案:

答案 0 :(得分:3)

与其他任何类一样 - 将其分配给Zend_Registy。我建议这样设置:

Zend_Registry::set('Zend_Log',$logInstance);

这是一种常见的方式,也用于翻译(将翻译实例设置为'Zend_Translate',类似表格和验证器的类会自动找到它)。

您可以使用Zend_Registry::get('Zend_Log')->log(...)记录您想要的任何地方。从架构的角度来看它不是很好(你不应该正常使用),但对于日志 - 它几乎可以出现在应用程序的任何地方,从视图助手到控制器和模型,这是一件好事。