国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > PHP > 正文

php實現session自定義會話處理器的方法

2020-03-22 17:54:11
字體:
來源:轉載
供稿:網友
本文實例講述了php實現session自定義會話處理器的方法。分享給大家供大家參考。具體分析如下:session自定義會話處理器,即就是說,所有關于session的各種操作,都可以通過自定義會話來自己決定。什么意思呢?先來看php.ini里的session.save_handler配置。默認情況下,session.save_handler = files,表示調用的是系統定義好的處理器(所謂處理器,其實就是一大堆函數/方法)。您可從將session.save_handler設置成 user 或者 memcache,甚至是網絡文件系統(云計算)。session.save_handler = user:表示調用自定義的會話處理器; session.save_handler = memcache:表示...略....(大致是保存在內存里,效率更高)。當設置 session.save_handler = files 時,關于session的操作,實際上調用了session.set_save_handler(具體查看php手冊)的六個回調函數(所謂回調函數,就是系統調用的,不需要指定調用)。六個回調函數見下面代碼,php手冊里也有:
復制代碼 代碼如下: phpfunction open($save_path, $session_name)
{
global $sess_save_path;
$sess_save_path = $save_path;
return(true);
}function close()
{
return(true);
}function read($id)
{
global $sess_save_path;
$sess_file = "$sess_save_path/sess_$id";
return (string) @file_get_contents($sess_file);
}function write($id, $sess_data)
{
global $sess_save_path;
$sess_file = "$sess_save_path/sess_$id";
if ($fp = @fopen($sess_file, "w")) {
$return = fwrite($fp, $sess_data);
fclose($fp);
return $return;
} else {
return(false);
}
}function destroy($id)
{
global $sess_save_path;
$sess_file = "$sess_save_path/sess_$id";
return(@unlink($sess_file));
}function gc($maxlifetime)
{
global $sess_save_path;
foreach (glob("$sess_save_path/sess_*") as $filename) {
if (filemtime($filename) + $maxlifetime time()) {
@unlink($filename);
}
}
return true;
}session_set_save_handler("open", "close", "read", "write", "destroy", "gc");
session_start();
// proceed to use sessions normally

當你把 session.save_handler設置為user時,你可以把上面這段代碼重寫,改成你所需要的方法,在執行php文件里調用即可。比如,默認情況下,我們保存 session 的文件名,都是以 sess_ 開頭的,其實就是在這里設置的,你可以改成你想要的。當然,你也可以修改 session 保存的方式,默認是保存在文件里,您可以保存到數據庫里(當然不建議你這么做,數據庫讀取速度更慢),也可以設置保存在內存里(速度最快,在memcache相關內容中有詳細講解)。希望本文所述對大家的php程序設計有所幫助。PHP教程

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 巴马| 文成县| 平南县| 大庆市| 得荣县| 乃东县| 大洼县| 六盘水市| 池州市| 潼南县| 平山县| 宁强县| 于田县| 轮台县| 庆阳市| 绵竹市| 随州市| 肇州县| 西林县| 乌鲁木齐县| 安溪县| 葫芦岛市| 嵩明县| 威信县| 堆龙德庆县| 信宜市| 大荔县| 本溪| 哈尔滨市| 连山| 黄大仙区| 门头沟区| 灵寿县| 钦州市| 北宁市| 吉安市| 香港| 孟连| 寿阳县| 赣榆县| 绵竹市|