序列化(serialize)、變量、xml、json是PHP常見的4種文本數(shù)據(jù)交換形式。
在匯川等地區(qū),都構(gòu)建了全面的區(qū)域性戰(zhàn)略布局,加強(qiáng)發(fā)展的系統(tǒng)性、市場(chǎng)前瞻性、產(chǎn)品創(chuàng)新能力,以專注、極致的服務(wù)理念,為客戶提供做網(wǎng)站、網(wǎng)站設(shè)計(jì) 網(wǎng)站設(shè)計(jì)制作按需設(shè)計(jì)網(wǎng)站,公司網(wǎng)站建設(shè),企業(yè)網(wǎng)站建設(shè),成都品牌網(wǎng)站建設(shè),成都全網(wǎng)營銷,成都外貿(mào)網(wǎng)站建設(shè),匯川網(wǎng)站建設(shè)費(fèi)用合理。
一、序列化與反序列化
使用serialize與unserialize將可以將任何數(shù)據(jù)類型(除了資源),格式成文本數(shù)據(jù)格式,是php內(nèi)置的,使用最方便,可以原汁原味將數(shù)據(jù)、對(duì)象等保存與恢復(fù)再用。
好處:使用方便,支持好。
不好:沒有通用性只有php能夠支持,文本化體積大。
可能:速度可能會(huì)慢。
二、變量
將數(shù)據(jù)寫成標(biāo)準(zhǔn)的PHP賦值語句存放在文本文件中,在程序執(zhí)行過程中包含進(jìn)來,通過執(zhí)行賦值的操作來恢復(fù)變量。discuz經(jīng)常使用這種方式做為數(shù)據(jù)的緩存。
好處:直觀。
不好:沒有通用性只有php能夠支持;使用不方便,需要自己將數(shù)據(jù)轉(zhuǎn)化成賦值語句;變量的接收方式也不夠靈活。
可能:速度會(huì)快些,與序列化相比存儲(chǔ)體積小。
三、xml
將數(shù)據(jù)格式化成xml存儲(chǔ)與解析。
好處:通用性強(qiáng),可以與其它程序語言的數(shù)據(jù)交換;php已經(jīng)有內(nèi)置的函數(shù)支持。
不好:文本化的體積大;格式化與反解效率低。
四、json
也是類似于xml的一種文本型數(shù)據(jù)交換格式。是一種為解決xml瀏覽器數(shù)據(jù)交換復(fù)雜而出現(xiàn)一種新的數(shù)據(jù)格式。
好處:通用性強(qiáng),目前主流的語言已經(jīng)內(nèi)置支持了,5.2(具體請(qǐng)查手冊(cè))版本已經(jīng)內(nèi)置支持。php5以后使用很方便,使用方便與序列化類似。與xml相比有更好的兼容性、效率高,尤其是對(duì)于瀏覽器。而數(shù)據(jù)格式體積很小。
可能:效率問題,尤其是解析的效率問題。
通過session來儲(chǔ)存
?php
session_start();
$_SESSION['username'] = "userName";
?
在其它頁面直接取出就行了
?
session_start();
echo?$_SESSION['username'];
?
通過url傳向其它頁面?zhèn)鬟f參數(shù)
other.php?user=xxx
?或在php重定向到其它頁面時(shí)
$username = "xxx";
$home_url = 'logIn.php?user='.$username;
header('Location:'.$home_url);
其它頁面用$_GET["user"]來接收
3.通過表單向其它頁面?zhèn)魉蛥?shù)
其它頁面用$_POST["user"]來接收
你先告訴我你要交換些什么數(shù)據(jù)嘛
請(qǐng)看這個(gè)例子:
幾個(gè)人要共用一段數(shù)據(jù):
Mysql數(shù)據(jù)表:share
字段:id,value
這樣一設(shè)計(jì)你就可以用ID來獲得一段數(shù)據(jù)
假設(shè)id=5 那么你就在每個(gè)用戶里面都用select * from share where id=5
就可以查詢獲得這個(gè)公共數(shù)據(jù)了,如果想每個(gè)人都更改那么你可以用update share set value=*** where id=5
當(dāng)然最好不好讓每個(gè)人都可以delete,否則其它用戶可能因查詢不到數(shù)據(jù)而出錯(cuò)。
首先一個(gè)是在修改用戶資料頁面怎樣判斷當(dāng)前登陸的是哪個(gè)用戶?
----答:你在數(shù)據(jù)庫里面加個(gè)字段,記錄用戶的類型的,然后登陸的時(shí)候用 cookie 或者 sessssion 記錄他的用戶類型。如 $_session['type']='admin'
然后就是,其實(shí)cookie很安全至少不像傳說中的那樣危險(xiǎn),這個(gè)你可以百度下別人的文章,一般情況下cookie是很難被修改的,所以考慮cookie的安全是必要的但是太過分了就沒必要了。
其次,session保存在服務(wù)器不假,每個(gè)session都有一個(gè)唯一的id 你打印 session數(shù)組久知道,程序可以通過那個(gè)id判斷session的所有者。