我们可以在 CodeIgniter 的会话中存储二维数组吗

我正在登录一个 Web 应用程序,然后我保持会话并锁定应用程序,然后其他用户登录,我还想将其数据保存到会话中而不破坏第一个用户的会话。我们可以将二维数组放入 CodeIgniter 的会话中吗?


// ################# OLD CODE WORKING FOR 1 USER ONLY #################

$result = $this->loginModel->login($email, $password);


$this->session->set_userdata($result);


// ################# NEW CODE (1) TRYING FOR MULTIPLE USERS #################

$result = $this->loginModel->login($email, $password);


$data['users'] = array();

foreach ($data['users'] as $index)

{

    $data['users'][$index] = $result;

$this->session->set_userdata($data['users']);


// ################# NEW CODE (2) TRYING FOR MULTIPLE USERS #################

$result = $this->loginModel->login($email, $password);


$data['users'] = array();

foreach ($data['users'] as $index)

{

    $data['users'][$index] = $result;

    $this->session->set_userdata($index,$result);


// ################# SESSION FILE CODE #################

public function set_userdata($data, $value = NULL)

{

    if (is_array($data))

    {

        foreach ($data as $key => &$value)

        {

            $_SESSION[$key] = $value;

        }


        return;

     }


     $_SESSION[$data] = $value;

}

这会将 1 个用户数据存储到会话变量中,我想要多个。


这是 C#如何在会话中存储 2D 字符串数组的参考?


在用户数据会话codeigniter中有硬编码的二维数组存储多维数组


在 CodeIgniter 用户指南https://codeigniter.com/user_guide/libraries/sessions.html


我没有在用户指南的会话中看到任何二维数组定义。


慕田峪4524236
浏览 108回答 1
1回答

四季花海

您可以设置多维数组,如下所示。$this->session->set_userdata(array("index_1"=>array("val1","val2","val3")));然后你可以使用$sess_data =  $this->session->userdata("index_1");echo $sess_data[0];echo $sess_data[1];echo $sess_data[2];
打开App,查看更多内容
随时随地看视频慕课网APP