一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - PHP教程 - php自定義session示例分享

php自定義session示例分享

2020-06-24 14:21PHP開發網 PHP教程

這篇文章主要介紹了php自定義session示例,需要的朋友可以參考下

下面為session類的代碼

復制代碼 代碼如下:

<?php
class session
{
 static function init()
 {
  session_set_save_handler(
    array("session","open"),
    array("session","close"),
    array("session","read"),
    array("session","write"),
    array("session","destroy"),
    array("session","gc")
  );
 }

 static function open($save_path,$session_name)
 {
  echo "session opening!<br>";
  /*global $db,$REMOTE_ADDR;
   $rs = $db->Execute("select * from Sessions where SessionID='".session_id()."'");
  $arry=$rs->FetchRow();
  if( $rs && $arry)
  {
  $db->Execute("update Sessions set SessionLast=NOW() where SessionID='".session_id()."'");
  }
  else
  {
  $query = "insert into Sessions set SessionID='".session_id()."',SessionName='$REMOTE_ADDR',SessionLast='NOW()'";
  //echo $query;
  $db->Execute($query);
  }*/
  return true;
 }
 static function close()
 {
  return(true);
 }

 static function read($id)
 {
  echo "session reading now!<br>";
  global $db;
  return true;
  $timenow = strftime("%Y-%m-%d %H:%M:%S", time());
  $query = "select SessionData from Sessions where SessionID='$id' and SessionLast > '$timenow'";
  $rs = $db->Execute($query);
  if(list($SessionData) = $rs->FetchRow())
  {
   //echo $SessionData;
   return $SessionData;
  }
  else
  {
   return false;
  }
 }

 static function write($id,$sess_data)
 {
  echo "session writing now!<br>";
  global $db;
  $rs = $db->Execute("select SessionID from Sessions where SessionID='$id'");
  $num = $rs->RecordCount();
  $unix_time = time()+MY_SESS_TIME;
  //echo MY_SESS_TIME;
  $dateleft = strftime("%Y-%m-%d %H:%M:%S", $unix_time);
  if($num <= 0)
  {
   $sql = "insert into Sessions set SessionData='$sess_data', SessionName='".$_SERVER["REMOTE_ADDR"]."', SessionLast='$dateleft', SessionID='".session_id()."'";
  }
  else
  {
   $sql = "update Sessions set SessionData='$sess_data', SessionName='".$_SERVER["REMOTE_ADDR"]."', SessionLast='$dateleft' where SessionID='$id'";
  }
  $db->Execute($sql);
 }

 static function destroy($id)
 {
  echo "session destroying now!<br>";
  global $db;
  $sql = "DELETE FROM Sessions WHERE `SessionID` = '$id'";
  $rs = $db->Execute($sql);
  return $rs;
  // $sess_file = "$sess_save_path/sess_$id";
  //return(@unlink($sess_file));
 }

 /*********************************************
  * WARNING - You will need to implement some *
 * sort of garbage collection routine here. *
 *********************************************/
 static function gc($maxlifetime)
 {
  echo "session maxlifetime now!<br>";
  global $db;
  $timenow = strftime("%Y-%m-%d %H:%M:%S", time());
  $sql = "DELETE FROM `$table_sessions` WHERE `SessionLast` < '$timenow'";
  return $sess_db->Execute($sql);
  //echo "now gc!<br>";
  return true;
 }
 // proceed to use sessions normally
}

 

使用方法

復制代碼 代碼如下:

include("session.class.php");
session::init();
session_start();
define("MY_SESS_TIME", 3600); //SESSION 生存時長
$_SESSION["test"] = "abcdef";

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 满溢游泳池免费土豪全集下拉版 | 国产一级一级片 | 亚洲欧美在线免费 | 忘忧草在线社区WWW日本直播 | 亚洲国产五月综合网 | 国产最强大片免费视频 | 久久精品视在线观看2 | 日韩中文在线 | s0e一923春菜花在线播放 | 亚洲天堂在线视频观看 | 午夜精品亚洲 | 日韩欧美a| 国产亚洲玖玖玖在线观看 | 日韩免费观看成第15集 | 麻豆婷婷 | 国产精品久久久久久久久 | 午夜办公室在线观看高清电影 | 日本xxxx在线视频免费 | 俄罗斯三级在线观看级 | 国产精品免费看久久久香蕉 | 日本艳鉧动漫1~6在线观看 | 99av导航| 午夜办公室 | 国产精品天天看天天爽 | 4438全国最大免费观看 | 欧美视频一区二区专区 | 波多野结衣伦理在线观看 | 欧美日韩高清完整版在线观看免费 | 91系列在线观看免费 | 国产精品久久久久久五月尺 | 91av免费 | 国产精品欧美亚洲韩国日本 | 国产一卡 | 超级碰碰青草免费视频92 | 亚洲日韩精品欧美一区二区一 | 色噜噜 男人的天堂在线观看 | 四虎影院在线免费播放 | 爱豆传媒最新视频国产 | 无人区乱码区1卡2卡三卡在线 | 亚洲男人精品 | 亚洲天堂男人的天堂 |