2009-11-21 51 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

相關問題