91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

使用php怎么編寫一個SESSION類

發布時間:2020-12-24 14:34:45 來源:億速云 閱讀:201 作者:Leah 欄目:開發技術

本篇文章為大家展示了使用php怎么編寫一個SESSION類,內容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。

關于 SESSION 在 php 中的應用是必不要少的,是最重要的功能之一。SESSION 在網絡應用中,稱為“會話”,我們通常理解為存儲特定用戶會話所需的信息,這樣,當用戶在網站頁面之間跳轉時,存儲的 SESSION 值不會丟失,而是在整個用戶會話中一直存活下去。通俗一點講,就是當用戶A上網時,會創建一個ID(a)值進行保存下來,如果你的ID(A)值沒有進行注銷,下次上網時,這個網站還會記得你的ID(A)值,這個時候就可以在網上進行調用你的ID(A)值了,比如歡迎您ID(A)值再一次訪問。

關于在 PHP 中應用 SESSION 值是很簡單的,只要在頂端提前輸入 session_start() 開始會話即可,下面就可以進行使用 SESSION 了,這只是小網站的應用方法,實際上,SESSION 自身還有許多屬性,比如 SESSION周期,調用SESSION,SESSION數據有效期,SESSION保存,SESSION注銷等等,如果有了這些屬性,看起來才算是一個比較規范的SESSION應用會話。

下面是一個完整的 Session 類,整合了 Session 最基本的屬性值,其中,打開,關閉與清理是符合php編程規范的,這也是一個很好的習慣。小小的說明一下,如果網站不是大量使用 Session 類,基本上就沒必要使用 SESSION 類了。

復制代碼 代碼如下:

<?php
/**
* 文件描述 Session類
* =================================================================
* 文件名稱 session.class.php
* -----------------------------------------------------------------
* 適用環境: PHP5.2.x / mysql 5.0.x
* -----------------------------------------------------------------
* 作 者 04ie。com
* -----------------------------------------------------------------
* 創建時間 2010-2-1
* =================================================================
*/
class Session
{
/**
* session默認有效時間
* @access public
* @var ineger $_expiry
*/
public $_expiry = 3600;
/**
* 有效域名
* @access public
* @var string $_domain
*/
public $_domain = '.jb51.net';
//初始化
public function __construct()
{
ini_set('session.use_trans_id', 0);
ini_set('session.gc_maxlifetime', $this->_expiry);
ini_set('session.use_cookie', 1);
ini_set('session.cookie_path', '/');
ini_set('session.cookie_domain', $this->_domain);
session_module_name('user');
session_set_save_handler(
array(&$this, 'open'),
array(&$this, 'close'),
array(&$this, 'read'),
array(&$this, 'write'),
array(&$this, 'destroy'),
array(&$this, 'gc')
);
session_start();
}
/**
* 打開session
* @access public
* @param string $savePath
* @param string $sName
* @return true
*/
public function open($savePath, $sName)
{
$this->_conn = mysql_connect('localhost', 'root', '');
mysql_select_db('databases');
mysql_query('SET NAMES "utf8"');
return true;
}
/**
* 關閉session
* @access public
* @return bool
*/
public function close()
{
return mysql_close($this->_conn);
}
/**
* 讀取session
* @access public
* @param string $sid sessionID
* @return mixed
*/
public function read($sid)
{
$sql = "SELECT data FROM sessions WHERE sessionid='%s'";
$sql = sprintf($sql, $sid);
$res = mysql_query($sql, $this->_conn);
$row = mysql_fetch_assoc($res);
return !$row ? null : $row['data'];
}
/**
* 寫入session
* @access public
* @param string $sid sessionID
* @param string $data serialize序列化后的session內容
* @return
*/
public function write($sid, $data)
{
$expiry = time() + $this->_expiry;
$sql = "REPLACE INTO sessions (sessionid,expiratio
n,data) VALUES ('%s', '%d', '%s')";
$sql = sprintf($sql, $sid, $expiry, $data);
mysql_query($sql, $this->_conn);
return true;
}
/**
* 銷毀session
* @access public
* @param string $sid sessionID
* @return
*/
public function destroy($sid)
{
$sql = "DELETE FROM sessions WHERE sessionid='%s'";
$sql = sprintf($sql, $sid);
mysql_query($sql, $this->_conn);
return true;
}
/**
* 清理過期session
* @access public
* @param integer $time
* @return
*/
public function gc($time = 0)
{
$sql = "DELETE FROM sessions WHERE expiration < '%d'";
$sql = sprintf($sql, time());
mysql_query($sql, $this->_conn);
mysql_query('OPTIMIZE TABLE sessions');
return true;
}

上述內容就是使用php怎么編寫一個SESSION類,你們學到知識或技能了嗎?如果還想學到更多技能或者豐富自己的知識儲備,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

新竹县| 东兴市| 穆棱市| 阿克| 读书| 时尚| 兴仁县| 綦江县| 开封市| 邵东县| 东至县| 凤台县| 香格里拉县| 库尔勒市| 江油市| 广州市| 新巴尔虎左旗| 桃源县| 赞皇县| 旺苍县| 潼南县| 安远县| 襄垣县| 应城市| 和政县| 镇宁| 玛多县| 盐池县| 噶尔县| 通道| 威信县| 苍溪县| 滁州市| 大安市| 黎川县| 屯留县| 麻江县| 武义县| 荃湾区| 龙南县| 盐池县|