我如何从 codeigniter 回显我的会话数组

How would i echo out my session array from codeigniter

我知道之前有人问过这个问题,但我的会话数组设置不同,我希望能够在我的成员视图中回显 'firstname' 和 'email'。

这是我的会话数组的样子:

Array
(
    [session_id] => 0be663ae77530e5992d3116af24a216d
    [ip_address] => 
    [user_agent] => Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.99 Safari/537.36
    [last_activity] => 1421547754
    [user_data] => 
    [email] => Array
        (
            [firstname] => Travis
            [email] => theller5567@gmail.com
            [password] => 894027e71b85d60bcc5b0dbe6e83f1f6
        )

    [is_logged_in] => 1
    [firstname] => 
)

我想访问电子邮件数组并回显名字。 任何帮助将不胜感激,谢谢。

这是我设置用户数据的函数。如果您看到更好的方法,请务必分享,我会非常高兴。 public 函数 register_user($key){

$this->load->model('model_users');
        if($this->model_users->is_key_valid($key)){
            if($newemail = $this->model_users->add_user($key)){
                $data = array(
                    'firstname' => $this->input->post('firstname'),
                    'email' =>  $newemail,
                    'is_logged_in' => 1
                );
                $this->session->set_userdata($data);
                redirect('login/members');
            }else echo "Failed to add user, please try again.";
        }else echo "invalid Key";
    }

我认为访问它的最简单方法是:

$email = $this->session->userdata('email');

然后你可以回显其中的信息:

echo $email['firstname'];

echo $email['email'];

据我所知,CodeIgniter 的会话库没有任何直接访问多维数组值的方法。

echo 'firstname: ' . $_SESSION ['email']['firstname'];
echo 'email: ' . $_SESSION ['email']['email'];