【问题标题】:PHP Session unset inside a function not working函数内部未设置 PHP Session 不起作用
【发布时间】:2013-11-17 20:02:14
【问题描述】:

我正在编写自己的会话处理程序,其中一些基于 CodeIgniters 会话处理程序。 global_registered 设置为关闭,我的这部分课程:

    protected $userdata = array();
    //in the initialization of the class after the session start i call
    $this->userdata =& $this->get_userdata();
    public function &get_userdata()
{
    // Just return reference to $_SESSION
    return $_SESSION;
}
    public function userdata($item)
{
    return isset($this->userdata[$item]) ? $this->userdata[$item] : NULL;
}
    public function unset_userdata($newdata = array())
{
    // Wrap single name as array
    if (is_string($newdata))
    {
        $newdata = array($newdata => '');
    }

    // Unset each item name
    if (count($newdata) > 0)
    {
        foreach (array_keys($newdata) as $key)
        {
            unset($this->userdata[$key]);
        }
    }

}

未设置无效。我在 php 上阅读了一些关于 unset 和函数问题的内容,但我不清楚如何在关闭全局变量的情况下取消设置函数中的某些内容

【问题讨论】:

    标签: php codeigniter session


    【解决方案1】:

    由于我不允许发表评论: 你在其他地方有 session_start() 吗?

    【讨论】:

    • 是的,这只是我遇到问题的相关代码。我打电话给班级,它开始了会话,我可以向它写入数据。从中读取数据,但我不明白未设置的全局与本地化
    【解决方案2】:

    对不起,这个问题不是 php 或 codeigniter,而是文件系统没有正确截断。谢谢:)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-03-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-07-06
      • 2023-01-29
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多