
課程咨詢: 400-996-5531 / 投訴建議: 400-111-8989
認(rèn)真做教育 專心促就業(yè)
定制PHP(PHP培訓(xùn) php教程 )4的session功能
這篇文章描述了怎樣定制php4的session處理。我們提供一個(gè)怎樣寫(xiě)一個(gè)全功能的基于mysql數(shù)據(jù)庫(kù)或dbm文件的session處理程序例子。
一、序言
新的php4有一套自己的session處理函數(shù)。缺省情況下,每個(gè)session存貯在系統(tǒng)臨時(shí)目錄的一個(gè)個(gè)獨(dú)立文件中(例如在unix系統(tǒng)中為/tmp)。
這適合或不適合,依你的需求而言。例如:如果你的支持php的web服務(wù)器分布在不同的機(jī)器上,你不能很容易地共享它們之間的session(當(dāng)然,你也可以將sessions保存在NFS共享中)。另一個(gè)潛在的問(wèn)題是你機(jī)器上的數(shù)千或數(shù)百萬(wàn)個(gè)session文件使你的文件系統(tǒng)變得散亂 。
對(duì)我們來(lái)說(shuō)幸運(yùn)的是,php4的開(kāi)發(fā)者非常有遠(yuǎn)見(jiàn)(感謝他們),他們?yōu)槟阄疫@樣的用戶提供了擴(kuò)展session處理的接口。
這個(gè)文檔解釋一點(diǎn)session的處理并且提供兩個(gè)能夠工作的怎樣擴(kuò)展session處理的例子。我們的第一個(gè)例子將使session處理程序保存 session數(shù)據(jù)到DBM文件中。我們的第二個(gè)例子將保存session數(shù)據(jù)到MYSQL數(shù)據(jù)庫(kù)中。
在你開(kāi)始之前,請(qǐng)下載ying20000602.zip 并且將它解開(kāi)放到web文檔目錄中。(我已經(jīng)將它帶在本文的結(jié)尾處了)
任何一個(gè)我們寫(xiě)的session處理程序會(huì)提供6個(gè)基本的函數(shù),它們將被php4的session處理程序調(diào)用,所以你不用擔(dān)心怎樣調(diào)用它們。
好在這些定制處理session的函數(shù)對(duì)你來(lái)說(shuō)是完全透明的。所以你可以改動(dòng)它們而不會(huì)影響你自己的PHP腳本。
這幾個(gè)函數(shù)是:
sess_open($sess_path, $session_name);
這個(gè)函數(shù)被session處理程序調(diào)用來(lái)作初始化工作。需要傳給它的兩個(gè)參數(shù)是$sess_path,它對(duì)應(yīng)你的php.ini文件中的session
【免責(zé)聲明】本文部分系轉(zhuǎn)載,轉(zhuǎn)載目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點(diǎn)和對(duì)其真實(shí)性負(fù)責(zé)。如涉及作品內(nèi)容、版權(quán)和其它問(wèn)題,請(qǐng)?jiān)?0日內(nèi)與聯(lián)系我們,我們會(huì)予以更改或刪除相關(guān)文章,以保證您的權(quán)益!