0

我的网站使用多种语言,我的用户可以点击标志来设置他们想要的语言。单击该标志时,会话应存储该信息,然后我希望我的控制器将用户重定向到另一个页面。我使用以下代码执行此操作:

<?php
public function setLangAction () {
 $oLanguageCookie = new Container('language');
 $oLanguageCookie->lang = $this->params ('langvar');
 $this->redirect()->toRoute('loadpage', array('page' => 'home'));
}
?>

但是,当我在 indexAction(加载页面路由到的操作)中 print_r($_SESSION) 时,$_SESSION 为空。

有人可以帮助我吗?

4

1 回答 1

0

根据您的参数来自哪里,您应该执行

  • $this->params()->fromQuery('langvar');
  • $this->params()->fromPost('langvar');

除非它是路由参数,否则您可以使用:

  • $this->params()->fromRoute('langvar');
  • $this->params('langvar');
于 2013-06-20T13:59:29.427 回答