Codeigniter $ this-> session-> set_userdata()无法正常工作

时间:2017-07-11 12:28:20

标签: php codeigniter session

我正在生成一个会话,但是当我生成它时,我在调用In [2]: import numpy as np In [3]: input_data = np.array([0.0020, 17.0001, 531.4679]) In [4]: np.set_printoptions(precision=32) In [5]: input_data Out[5]: array([ 2.00000000000000004163336342344337e-03, 1.70000999999999997669419826706871e+01, 5.31467899999999985993781592696905e+02]) In [6]: input_data = np.int32(np.around(input_data * 10**4)) In [7]: input_data Out[7]: array([ 20, 170001, 5314679]) 函数后没有得到__ci_last_regenerate。当我在没有__ci_last_regenerate的情况下生成我的会话后重定向时,会话数据没有出现在下一页上。我正在使用CI 3.1.4

$this->session->set_userdata('sessionName',$sessionArray)

谢谢

3 个答案:

答案 0 :(得分:10)

如果您使用 PHP> = 7.0 ,请检查 codeignator版本

如果codeignator版本为3.0或小于3.0,则需要更新codeignator 到当前版本(例如,codeignator当前版本3.1.7)

答案 1 :(得分:1)

在config / autoload.php $autoload['libraries'] = array('session');

中自动加载您的会话

首先确保您已设置会话保存路径。有人认为就像这个例子

$config['sess_save_path'] = APPPATH . 'cache/sessions/'; 
$config['sess_regenerate_destroy'] = TRUE;
  

文件夹权限0700

然后尝试在控制器上设置会话,例如

$sessionArray = array(
   'is_logged' => TRUE
);

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

// Remove the sessionName $this->session->set_userdata('sessionName',$sessionArray)

然后你应该能够访问像

这样的会话
<?php echo $this->session->userdata('is_logged');?>

答案 2 :(得分:-1)

首先加载会话库:

$this->load->library('session')

像这样使用:

$this->session->set_userdata($sessionArray)

但它完全取决于你的其余代码。上传其余代码以获得更好的解决方案