PHP自定session保存路径及删除、注销与写入的方法

yipeiwu_com5年前PHP代码库

本文实例讲述了PHP自定session保存路径及删除、注销与写入的方法。分享给大家供大家参考。具体方法如下:

复制代码 代码如下:

$sessionpath=session_save_path();        //获取当前session的保存路径
echo $sessionpath;
if(strpos($sessionpath,";")!==false)        //如果路径中存在分号
{
  $sessionpath=substr($sessionpath,strpos($sessionpath,";")+1);  //设置新的路径
}
function open($save_path,$session_name)      //定义打开函数
{
  global $sess_save_path,$sess_session_name;     //预定义session路径及名称
  $sess_save_path=$save_path;        //定义保存路径
  $sess_session_name=$session_name;       //定义session名称
  return(true);            //返回真值
}
function close()            //定义关闭函数
{
  return(true);            //直接返回真值
}
function read($id)           //定义读取函数
{
  global $sess_save_path,$sess_session_name;     //预定义保存路径与名称
  $sess_file="$sess_save_path/sess_$id";      //定义文件
  if($fp=@fopen($sess_file,"r"))        //打开文件
  {
    $sess_data=fread($fp,filesize($sess_file));      //读取文件
    return($sess_data);          //返回读取内容
  }
  else
  {
    return("");            //如果读取失败必须返回空值
  }
}
function write($id,$sess_data)         //定义写入函数
{
  global $sess_save_path,$sess_session_name;     //预定义保存路径与名称
  $sess_file="$sess_save_path/sess_$id";      //定义文件
  if($fp=@fopen($sess_file,"w"))        //打开文件
  {
    return(fwrite($fp,$sess_data));        //执行写操作
  }
  else
  {
   return(false);           //如果打开失败返回错误
  }
}
function destroy($id)           //定义注销函数
{
  global $sess_save_path,$sess_session_name;
  $sess_file="$sess_save_path/sess_$id";      //指明文件
  return(@unlink($sess_file));         //删除session文件
}
function gc($maxlifetime)          //定义过期函数
{
  return true;            //直接返回真值
}
session_set_save_handler("open","close","read","write","destroy","gc"); //设置函数
session_start();            //初始化session
//以下就可以继续正常地使用session

希望本文所述对大家的PHP程序设计有所帮助。

相关文章

PHP统一页面编码避免乱码问题

页面编码统一 MySQL数据库编码、html页面编码、PHP或html文件本身编码要全部一致。 1、MySQL数据库编码: 建立数据库时指定编码(如gbk_chinese_ci),建立...

PHP根据树的前序遍历和中序遍历构造树并输出后序遍历的方法

PHP根据树的前序遍历和中序遍历构造树并输出后序遍历的方法

本文实例讲述了PHP根据树的前序遍历和中序遍历构造树并输出后序遍历的方法。分享给大家供大家参考,具体如下: 先来看看前序遍历、中序遍历与后序遍历原理图: 根据树的前序遍历和中序遍历构造...

PHP中include和require的区别实例分析

先编辑command.php文件 echo 'hello'.PHP_EOL; 然后编辑console.php文件 for($i=1;$i<=3;++$i){ requ...

php有效防止同一用户多次登录

【问题描述】:同一用户在同一时间多次登录如果不能检测出来,是危险的。因为,你无法知道是否有其他用户在登录你的账户。如何禁止同一用户多次登录呢? 【解决方案】 (1) 每次登录,身份认证成...

使用Sphinx对索引进行搜索

Sphinx对索引进行搜索主要分为以下几步:1、用户输入查询语句。 2、对查询语句进行词法分析,语法分析,及语言处理。 3、搜索索引,得到符合语法树的文档。 4、根据得到的文档和查询语句...