作者:手机用户2502905147 | 来源:互联网 | 2018-03-24 06:03
[PHP]代码
session_Overdue=3600;
$this->session_db= $this->db();
}
/**
* 打开
*/
public function open() {
return true;
}
/**
* 关闭
*/
public function close() {
return true;
}
/**
* 读取
*/
public function read($id) {
$where['id']=$id;
$this->session_db->M('session');
$value=$this->session_db->find($where);
if ($value) {
return $value['data'];
} else {
return "";
}
}
/**
* 写入
*/
public function write($id, $datas) {
$where['id']=$id;
$date['data']=$datas;
$date['time']=time()+$this->session_Overdue;
$date['ip']=$this->session_db->get_client_ip();
if (empty($_SESSION['user_id'])){
$date['user']=0;
}else {
$date['user']=$_SESSION['user_id'];
}
$this->session_db->M('session');
$up=$this->session_db->Update($date, $where);
if ($up){
return true;
}else {
$date['id']=$id;
$this->session_db->Insert($date);
return true;
}
}
/**
* 摧毁
*/
public function destroy($id) {
$where['id']=$id;
return $this->session_db->Delete($where);
}
/**
* 回收
*/
public function gc($max) {
return true;
}
function __destruct(){
$this->session_db->Delete("`time`<&#39;".time()."&#39;");
}
}
ini_set ( &#39;session.save_handler&#39;,$config[&#39;SESSION_START&#39;]);
$session = new session ();
session_set_save_handler ( array ($session, &#39;open&#39; ), array ($session, &#39;close&#39; ), array ($session, &#39;read&#39; ), array ($session, &#39;write&#39; ), array ($session, &#39;destroy&#39; ), array ($session, &#39;gc&#39; ) );
session_start();