php session类
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php session类相关的知识,希望对你有一定的参考价值。
<?php
error_reporting(E_ERROR);
class SessionDeal{
private $database;
/*
session初始化函数
@param database 数据库对象
@return bool 操作成功返回true,失败返回false
*/
function open($database){
$this->database = $database;
echo "open".PHP_EOL;
return true;
}
/*
写入session
@param id sessionID
@param val session值
@param expire 超时时间 单位:秒
*/
function write($id,$val,$expire){
echo "write".PHP_EOL;
return true;
}
/*
获取session值
@param id sessionID
@return val session值
*/
function read($id){
echo "read".PHP_EOL;
return $val;
}
/*
销毁session(删除数据库中的session)
@param id sessionID
*/
function destroy($id){
echo "destroy".PHP_EOL;
return true;
}
/*
session关闭函数(相当于析构函数,可以做数据库关闭操作)
*/
function close(){
echo "close".PHP_EOL;
return true;
}
/*
垃圾回收(不定期销毁过期session)
*/
function gc(){
echo "gc";
}
}
$handler = new SessionDeal();
session_set_save_handler(
array($handler, ‘open‘),
array($handler, ‘close‘),
array($handler, ‘read‘),
array($handler, ‘write‘),
array($handler, ‘destroy‘),
array($handler, ‘gc‘)
);
// 下面这行代码可以防止使用对象作为会话保存管理器时可能引发的非预期行为
register_shutdown_function(‘session_write_close‘);
session_start();
$_SESSION[‘name‘] = ‘value‘;
$ret = $_SESSION[‘name‘];
echo $ret.PHP_EOL;
// 现在可以使用 $_SESSION 保存以及获取数据了
以上是关于php session类的主要内容,如果未能解决你的问题,请参考以下文章