Mysql会话数据数组解释

时间:2012-06-27 22:03:03

标签: php mysql codeigniter session

我正在使用Codeigniter的会话库在我的表中添加会话数据。

来自文档:

$newdata = array(
                   'username'  => 'johndoe',
                   'email'     => 'johndoe@some-site.com',
                   'logged_in' => TRUE
               );

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

例如,在我的会话表中,我得到了这段代码:

a:7:{s:9:"user_data";s:0:"";s:7:"user_id";s:2:"10";s:8:"username";s:0:"";s:9:"firstname";s:3:"Dan";s:8:"lastname";s:6:"Greeb";s:6:"status";s:1:"1";s:18:"settings_activated";i:1;}

我找不到任何关于所有字母和数字含义的文档。语法是什么意思?

请注意上一个会话项目settings_activated。我用它来检查用户是否输入了他/她的设置。它设置为1或0. i是什么意思?

1 个答案:

答案 0 :(得分:1)

要访问所有会话用户数据,只需输入:

$data = $this->session->all_userdata();

有了这个,你可以访问

echo $data['username']; // gives "johndoe"

如果你想要特定的东西,你可以做

$username = $this->session->userdata('username');
echo $username;  // gives "johndoe"

正如Wrikken在上面提到的那样,您在实际表中看到的数据已经过加强,CI不希望您直接与它进行交互 - 只需使用Session类。