首先声明我很懒,再次我很笨,最后说明我很菜。
ci自带的session类是使用cookie保存的。而且在
config.php里无法设置关闭浏览器后登录状态及时失效。这就给我这样的习惯使用php自身的菜鸟造成了不便。php自身的session,是在关闭浏览器后登录状态就失效的(群里有大牛指出是创建了新的会话,不管怎样你不再次登录就进不了。),这样也就比较的安全,因为有些用户习惯直接关闭浏览器,而不是点击我们给他的链接“退出登录”。这样就有个问题,使用ci自带的session类时,如果只是关闭浏览器,登录状态却依然保留,留下了安全隐患。于是我开始寻找第三方的session lib。有个ob session 说有这样的功能的,使用方法也和ci自带的session类似,但是,我测试没有通过。而且他的配置和ci自带的配置有些不一样,比如ci的session里 $
config['sess_expiration']=0 就是不过期,而ob session这样设置就是关闭浏览器后就失效。db session是把他放到db里对我也不是适用。最后我找到了phpsession,他本身的说明就提到了他是用的php的session。
他的用法很简单。
构造函数里加载(也可以autoload)
复制内容到剪贴板PHP 代码:
$this->load->library('phpsession');
接着就可以使用他的方法了。
创建一个session:
复制内容到剪贴板PHP 代码:
$this->phpsession->save('foo','bar');//第一个参数是session名,第二个是值。
读取一个session:
复制内容到剪贴板PHP 代码:
$foo = $this->phpsession->get('foo');
删除一个session:
复制内容到剪贴板PHP 代码:
$this->phpsession->clear('foo');
删除所有session
复制内容到剪贴板PHP 代码:
$this->phpsession->clear();
MuMu觉得比较简单,比较自由了
文件放到
application\libraries
[
本帖最后由 kissmumu 于 2008-3-14 10:36 编辑 ]