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

本文实例讲述了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 

猜你喜欢

转载自blog.csdn.net/xiaoxinshuaiga/article/details/80212076