cod*_*rex 9 php session cakephp
我有一个变量支持"用户名",并希望通过会话获取这些值到任何视图页面.
如何在视图中获取此会话变量?
dec*_*eze 12
有一个SessionComponent在您的控制器可用,您可以像使用$this->Session->write('Name', 'Value');.类似地,还有用于View 的SessionHelper,它执行非常相似的操作并且可以像$session->read('Name');.
如果您位于控制器中,请使用会话组件。默认情况下,它包含在所有控制器中。它具有 Session::read() 和 Session::write() 方法。查看http://book.cakephp.org/view/173/Sessions了解更多信息。
我相信,如果 Session 组件像其他一些组件一样,您可以在视图中使用它。尝试在视图代码块中执行 $session->read() 。如果这不起作用,请尝试执行 $this->Session->read(...)。作为最后的手段,如果这些都不起作用,您始终可以使用旧的 PHP $_SESSION,尽管它有点偏离 Cake 框架。但是,如果您确定不打算使用 Cake 的会话管理(IMO,您实际上不必这样做,因为它只不过是 $_SESSION 的包装器),那么只需知道何时正确应用 hack 即可。