redis 替代php文件存储session的实例
redis替代php文件存储session的实例
查看实例之前请先了解 PHPsession_set_save_handler函数的用法
定义个SessionManager 类
classSessionManager{
private$redis;
publicfunction__construct(){
$this->redis=newRedis();
$this->redis->connect('192.168.0.102',6379);
$retval=session_set_save_handler(
array($this,"open"),
array($this,"close"),
array($this,"read"),
array($this,"write"),
array($this,"destroy"),
array($this,"gc")
);
session_start();
}
publicfunctionopen($path,$name){
returntrue;
}
publicfunctionclose(){
returntrue;
}
publicfunctionread($id){
$session_value=$this->redis->get($id);
if($session_value){
return$session_value;
}else{
return"";
}
}
publicfunctionwrite($id,$data){
if($this->redis->set($id,$data)){
returntrue;
}else{
returnfalse;
}
}
publicfunctiondestroy($id){
if($this->redis->delete($id)){
returntrue;
}else{
returnfalse;
}
}
publicfunctiongc($maxlifetime){
returntrue;
}
publicfunction__destruct(){
session_write_close();
}
}
创建一个session_set.php代码如下
include("SessionManager.php");
newSessionManager();
$_SESSION['user_name']="xxdcsnd@sina.com";
创建一个session_set.php代码如下
include("SessionManager.php");
newSessionManager();
echo$_SESSION['user_name'];
测试输出结果 xxdcsnd@sina.com
注意:php.inisession.save-hadler设置为user,否则session_set_save_handler不会生效
如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。
热门推荐
10 送女士祝福语长辈简短
11 开店大吉文案祝福语简短
12 父母生孩子祝福语简短
13 老爸生日暴富祝福语简短
14 妈妈给宝贝祝福语简短
15 俄语祝福语贺卡文案简短
16 导师退休花束祝福语简短
17 毕业男生聚餐祝福语简短
18 相恋人回去祝福语简短