1

这是我的问题...我在 CI_Controller 的构造中添加了这些行

    $this->load->library("session");
    if($this->session->userdata("var")==FALSE)
    {
        $this->session->set_userdata("var", "value");   
    }

当我在子类中使用 $this->session->userdata("var") 时,它没有值。我通过在 CI_CONtroller 的构造和子类的构造中显示 $this->session->userdata("var") 的值来测试它,它向我显示了父亲的价值,但没有孩子的价值。

还有一件事,在重新加载页面大约 3 或 4 次后。它工作得很好。

我将不胜感激您的回答。(我很抱歉我不会说英语)

4

2 回答 2

1

你应该做

$this->load->library("session");
    if(!$this->session->userdata("var"))
    {
        $this->session->set_userdata("var", "value");   
    }

如果 isset 或不是会话数据, causeuserdata()方法返回 false 和 true。

于 2013-03-08T19:23:58.900 回答
0

你可以这样做

$this->load->library("session");

$var    =   $this->session->userdata("var");

if(!$var)
{
    $this->session->set_userdata("var", "value");   
}
于 2013-03-08T18:37:30.903 回答