用户
 找回密码
 入住 CI 中国社区
搜索
查看: 1725|回复: 8
收起左侧

[已解决] CI 改变session 时间问题

[复制链接]
发表于 2015-3-3 16:19:29 | 显示全部楼层 |阅读模式
$this->CI->config->set_item('sess_expiration',60*60*24);//秒
                                       
                                        $this->CI->session->set_userdata(array(
                                                'USER_id' => $user['user_id'],
                                                'USER_name' => $user['username'],
                                                'real_name'=>$user['real_name'],
                                        ));
代码在libraries下面  为什么我修改了 session 但是设置session的时候过期时间还是读取的配置文件里面那个时间呢,我在这里设置的时间没有起到作用呢

谢谢

 楼主| 发表于 2015-3-3 17:10:56 | 显示全部楼层
Closer 发表于 2015-3-3 17:01
手冊上面有寫:
注意:这里修改的配置元素并不是改变配置文件(application/config/config.php)的值,仅改变 ...

按照我上面代码的话 虽然没有改变 文件内容 但是在设置session时间的话 读取的应该是我设置的时间吧?而不是读取配置的文件吧?请问是吗?

发表于 2015-3-3 17:01:09 | 显示全部楼层
手冊上面有寫:
注意:这里修改的配置元素并不是改变配置文件(application/config/config.php)的值,仅改变当前$this->config->item()方法取到的值

CI 手冊 - 配置類
 楼主| 发表于 2015-3-3 17:49:33 | 显示全部楼层
Closer 发表于 2015-3-3 17:37
我能想到的只有
1. 資料庫存取到期時間
2. Session 紀錄到期時間

哦哦,谢谢了

http://codeigniter.org.cn/forums/thread-17595-1-1.html  我打算用  sdjkhe 回答的方式 来解决  
发表于 2015-3-3 17:17:42 | 显示全部楼层
exchangkong 发表于 2015-3-3 17:10
按照我上面代码的话 虽然没有改变 文件内容 但是在设置session时间的话 读取的应该是我设置的时间吧?而 ...

它的作用就只是當前網頁設置與改變
例如 $config['test'] = 123;

你取得 test 這個 item 之後
可以顯示原值/計算/加上文字
再用 $this->config->item() 取得處理後的值

這功能就有點像是
改變原本既有的參數設定

而且改變的只是"當下的"檔案
並沒有全局
 

 楼主| 发表于 2015-3-3 17:28:45 | 显示全部楼层
Closer 发表于 2015-3-3 17:17
它的作用就只是當前網頁設置與改變
例如 $config['test'] = 123;

请问有什么办法临时改变全局的值吗?现在我想临时修改session的生存时间,但是又不想改变配置文件中的那个值
发表于 2015-3-3 17:37:54 | 显示全部楼层
exchangkong 发表于 2015-3-3 17:28
请问有什么办法临时改变全局的值吗?现在我想临时修改session的生存时间,但是又不想改变配置文件中的那 ...

我能想到的只有
1. 資料庫存取到期時間
2. Session 紀錄到期時間

到期之後刪除此 Session 值
 楼主| 发表于 2015-3-3 17:54:54 | 显示全部楼层
Closer 发表于 2015-3-3 17:37
我能想到的只有
1. 資料庫存取到期時間
2. Session 紀錄到期時間

哦哦,谢谢

本版积分规则