最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

PHP封裝的數(shù)據(jù)庫保存session功能類

 更新時間:2016年07月11日 11:30:41   作者:dotcoo  
這篇文章主要介紹了PHP封裝的數(shù)據(jù)庫保存session功能類,涉及php基于SessionHandlerInterface接口實(shí)現(xiàn)的讀取、寫入、保存、銷毀等常用操作方法,需要的朋友可以參考下

本文實(shí)例講述了PHP封裝的數(shù)據(jù)庫保存session功能類。分享給大家供大家參考,具體如下:

PHP用數(shù)據(jù)庫保存session類:

<?php
class SafeSessionHandler implements SessionHandlerInterface {
  public $save_path;
  public $session_name;
  public $table;
  public function __construct() {
    $this->table = new Table("safe_session");
  }
  private function session_id_parse($session_id) {
    $time = hexdec(substr($session_id, 0, 8));
    $skey = substr($session_id, 8);
    return array($time, $skey);
  }
  public function close() {
    loginfo("close: ");
    return true;
  }
  public function create_sid() {
    loginfo("create_sid: ");
    $time = time();
    $skey = "";
    $char = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
    for ($i=0; $i<52; $i++) {
      $skey .= $char{mt_rand(0, 61)};
    }
    $session = array(
      "time" => $time,
      "skey" => $skey,
      "sval" => "",
    );
    $this->table->insert($session);
    return dechex($time) . $skey;
  }
  public function destroy($session_id) {
    loginfo("destroy: %s", $session_id);
    list($time, $skey) = $this->session_id_parse($session_id);
    $this->table->where("time = ?", $time)->where("skey = ?", $skey)->delete();
    return true;
  }
  public function gc($maxlifetime) {
    loginfo("gc: %s", $maxlifetime);
    $this->table->where("time < ?", time() - 86400 * 30)->delete();
    return true;
  }
  public function open($save_path, $session_name) {
    loginfo("open: %s, %s", $save_path, $session_name);
    $this->save_path = $save_path;
    $this->session_name = $session_name;
    return true;
  }
  public function read($session_id) {
    loginfo("read: %s", $session_id);
    list($time, $skey) = $this->session_id_parse($session_id);
    $row = $this->table->where("time = ?", $time)->where("skey = ?", $skey)->select()->fetch();
    if (empty($row)) {
      return "";
    }
    return $row["sval"];
  }
  public function write($session_id, $session_data) {
    loginfo("write: %s, %s", $session_id, $session_data);
    $session = array("sval" => $session_data,);
    list($time, $skey) = $this->session_id_parse($session_id);
    $this->table->where("time = ?", $time)->where("skey = ?", $skey)->update($session);
    return true;
  }
}

更多關(guān)于PHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《php字符串(string)用法總結(jié)》、《PHP數(shù)組(Array)操作技巧大全》、《PHP運(yùn)算與運(yùn)算符用法總結(jié)》、《PHP網(wǎng)絡(luò)編程技巧總結(jié)》、《PHP基本語法入門教程》、《php操作office文檔技巧總結(jié)(包括word,excel,access,ppt)》、《php日期與時間用法總結(jié)》、《php面向?qū)ο蟪绦蛟O(shè)計(jì)入門教程》、《php+mysql數(shù)據(jù)庫操作入門教程》及《php常見數(shù)據(jù)庫操作技巧匯總

希望本文所述對大家PHP程序設(shè)計(jì)有所幫助。

相關(guān)文章

  • PHP中動態(tài)顯示簽名和ip原理

    PHP中動態(tài)顯示簽名和ip原理

    PHP中動態(tài)顯示簽名和ip原理...
    2007-03-03
  • php重定向的三種方法分享

    php重定向的三種方法分享

    個人更傾向于header的方法,這樣頁面的跳轉(zhuǎn)速度更快點(diǎn),用戶從視覺上不易察覺整頁的跳轉(zhuǎn),而只是局部的變化
    2012-02-02
  • PHP開發(fā)api接口安全驗(yàn)證操作實(shí)例詳解

    PHP開發(fā)api接口安全驗(yàn)證操作實(shí)例詳解

    這篇文章主要介紹了PHP開發(fā)api接口安全驗(yàn)證操作,結(jié)合實(shí)例形式詳細(xì)分析了PHP開發(fā)api接口安全驗(yàn)證的原理、操作技巧與注意事項(xiàng),需要的朋友可以參考下
    2020-03-03
  • php算法實(shí)例分享

    php算法實(shí)例分享

    本文給大家分享了幾個常見的php算法的實(shí)例代碼,非常的簡單實(shí)用,有需要的小伙伴可以參考下。
    2015-07-07
  • thinkphp3.2點(diǎn)擊刷新生成驗(yàn)證碼

    thinkphp3.2點(diǎn)擊刷新生成驗(yàn)證碼

    這篇文章主要介紹了thinkphp3.2點(diǎn)擊刷新生成驗(yàn)證碼的相關(guān)資料,需要的朋友可以參考下
    2016-02-02
  • php微信支付接口開發(fā)程序

    php微信支付接口開發(fā)程序

    微信支付接口現(xiàn)在也慢慢的像支付寶一個可以利用api接口來實(shí)現(xiàn)第三方網(wǎng)站或應(yīng)用進(jìn)行支付了,下文整理了一個php微信支付接口開發(fā)程序并且己測試,感興趣的小伙伴們可以參考一下
    2016-08-08
  • 深入淺出理解PHP原理之變量賦值

    深入淺出理解PHP原理之變量賦值

    將會對變量賦值過程中,PHP內(nèi)部對數(shù)據(jù)處理的原理進(jìn)行闡述,不過在講述該原理前,需要先了解一下變量名和它的值是如何關(guān)聯(lián)起來的,這個對變量賦值的理解非常重要
    2021-09-09
  • php中var_export與var_dump的區(qū)別分析

    php中var_export與var_dump的區(qū)別分析

    php中var_export與var_dump的區(qū)別分析,在大多數(shù)情況下,多用var_dump來輸出,因?yàn)樗草敵隽藬?shù)據(jù)類型。
    2010-08-08
  • 全新Mac配置PHP開發(fā)環(huán)境教程

    全新Mac配置PHP開發(fā)環(huán)境教程

    趁著這次加硬盤的機(jī)會,就準(zhǔn)備徹底重做開發(fā)環(huán)境?,F(xiàn)在對Mac也有了一定的了解,特地記錄一下本次的開發(fā)環(huán)境安裝詳情,給自己一個備忘,希望也可以幫助到剛接觸Mac環(huán)境的同學(xué)們
    2016-02-02
  • php獲取url參數(shù)方法總結(jié)

    php獲取url參數(shù)方法總結(jié)

    這篇文章主要介紹了php獲取url參數(shù)方法,實(shí)例總結(jié)了利用parse_url()函數(shù)解析URL的方法,需要的朋友可以參考下
    2014-11-11

最新評論

海口市| 阿图什市| 永寿县| 泰州市| 金山区| 乐平市| 浦城县| 龙游县| 洛扎县| 余姚市| 东阿县| 卢氏县| 阳山县| 上思县| 梅河口市| 二连浩特市| 峨山| 佛学| 井冈山市| 巴塘县| 古丈县| 招远市| 乌鲁木齐县| 绥化市| 鄂托克旗| 介休市| 桃园县| 利辛县| 望谟县| 奉新县| 井研县| 云阳县| 商水县| 景泰县| 蒙山县| 宜川县| 嵊州市| 巴中市| 仁怀市| 射洪县| 新宾|