我是PHP和Zend的新手,我想缓存有关已登录用户的敏感数据。问题是我不希望用户能够更改此数据的值,因此我不知道如何存储它。
我想在用户登录后将其存储在Zend_Register中,但我认为这不是正确的解决方案。
Zend_Registry::set('ud', $userData);
然后我在另一个控制器中检索数据:
$ud = Zend_Registry::get('ud');
还有其他办法吗?比如将值存储在cookie中,并使用散列检查它们的完整性,或者为每个会话设置服务器端缓存......
提前致谢, 杰瑞克
答案 0 :(得分:3)
Zend_Registry
不是持久的,它的目的是在应用程序内共享临时数据,并在脚本完成后丢失。
如果您想要持久数据,请使用Zend_Session
答案 1 :(得分:2)
我建议使用Zend_Session
$session = new Zend_Session_Namespace('sensetive_data');
$session->name = 'User';
$session->email = 'Email@email.com';
现在是有意义的部分,为了照顾完整性,你可以使用某种哈希..(不确定这是否是一个很好的解决方案?)。但如果服务器配置正确,则会话应保存..