我在 Zend Framework 项目中实现了 smarty。我按照本教程Smarty 3 extension for Zend Framework做到了这一点。我的问题是不会为每个模块初始化 smarty,所以我需要在 Bootstrap 中初始化 Smarty 之前知道模块的名称。
以下调用不起作用,因为getRequest()
当时不存在:
Zend_Controller_Front::getInstance()->getRequest()->getModuleName()
我知道我可以从中获取模块名称$_SERVER['REQUEST_URI']
,但我不喜欢这个解决方案。
是否有另一种获取模块名称的方法,或者我可以在其他地方而不是在其他地方初始化 Smarty Bootstrap
?也许在dispatchLoopStartup()
方法上?