首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法使用Zend_Registry

无法使用Zend_Registry
EN

Stack Overflow用户
提问于 2014-10-01 13:19:44
回答 2查看 135关注 0票数 0

我是ZendFramework新手,需要帮助..我正面临着关于Zend_Registry的问题。我有一个在Zend_Registry中处理登录功能和设置person类型的AuthController

代码语言:javascript
复制
$reg = Zend_Registry::getInstance();
$reg['personType'] = $str['person_type'];

当我在AuthController中获得值时,它工作得很好

代码语言:javascript
复制
$reg = Zend_Registry::getInstance();
$userType = $reg['personType'];

我还有一个PersonController,我正在处理更改密码功能,其中我也需要personType,但是当我这样做的时候

代码语言:javascript
复制
$reg = Zend_Registry::getInstance();
$userType = $reg['personType'];

这会将NULL返回给$userType,但我这里需要personType。先谢谢你...

EN

回答 2

Stack Overflow用户

发布于 2014-10-01 17:51:34

应该使用Zend_Registry。

写入注册表:Zend_Registry::set('personType', $str['person_type']);

从注册表读取:Zend_Registry::get('personType');

编辑:好的,我检查了你的方法,它似乎也起作用了。以前从来没见过。

所以回到你的问题上来。我认为您的AuthController和您的PersonController不是在同一个PHP实例中调用的。Zend Registry只存储从用户请求页面到页面发送给用户的时间的数据。当您在登录期间设置它时,它将不会在后续用户请求中包含此数据。为此,您需要使用session。

票数 1
EN

Stack Overflow用户

发布于 2014-12-23 14:25:45

实际上,zend注册中心将只为下一次请求保留数据。您必须使用zend session而不是zend注册表

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26134587

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档