将变量传递给每个控制器在Zend Framework中使用注册表
问题描述:
我可以使用zend Registry来保存要在其他控制器中使用的变量吗? 这是我的代码,不能在另一个控制器中工作:将变量传递给每个控制器在Zend Framework中使用注册表
Zend_Registry :: set('id',$ Id);
答
Zend_Registry
是旧学校$GLOBALS
的替代方案。这是一个容器,你把东西放在里面,稍后再检索它们。
你在哪里把id
注册?在Bootstrap
? init
?确保它在你的应用程序流程中被调用。
答
也许你期望zend_registry像一个cookie一样工作,它不会。如果你在一个控制器中设置了某些东西,然后点击一些链接到另一个控制器,你将丢失这些数据否则像shadowfax说的只是确保你在应用程序流程中的某个地方设置你的数据。
我把它放在行动的某个地方而不是int或bootstrap – 3ehrang 2010-05-01 07:59:26