2009-11-21 41 views
2

而不是做以下:

print $this->session->userdata('username'); 
print $this->session->userdata('email'); 
print $this->session->userdata('phone'); 
print $this->session->userdata('fax'); 
//etc... 

有没有办法做这样的事情

foreach($this->session as $key=>$val) print $key.'-'.$val; 

或者是有可能做这样的事情

print_r($this->session); 

的原因,我问是因为我不知道SESSION键是什么,我也希望能够通过CI会话值进行循环。

回答

3

$this->session当然是一个对象,你可以使用print_rvar_dump

倾倒,但我建议使用此为获取所有的会话数据,除了闪存数据:

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

1

你可以做

print_r($this->session); 

这将返回所有会话的数组。

1

对我来说,它通过铸造$this->session作为和数组然后倾倒它。

 $this->load->library('session'); #load session 
     foreach ((array)$this->session as $sess_arr_k => $sess_arr_v) 
     { 
      "<li>". $sess_arr_k .":<br />". var_dump($arrSessElement) ."</li>"; 
     } 

为我工作。

+0

OP表示他“也希望能够循环访问CI会话值。” – Goose 2016-04-01 19:00:49

+0

由于在这一点上它是一个数组,它应该更容易遍历(即使是递归),但我相信他需要知道他有什么可用的。无论如何,这只是另一种方式来做到这一点。 – 2016-04-01 19:10:14

+0

啊,我明白了。我不使用投射,它的一个例子就是澄清。欣赏它。 – Goose 2016-04-01 19:14:59

相关问题