本文主要給大家介紹php對(duì)象的序列化,文章內(nèi)容都是筆者用心摘選和編輯的,具有一定的針對(duì)性,對(duì)大家的參考意義還是比較大的,下面跟筆者一起了解下php對(duì)象的序列化吧。
創(chuàng)新互聯(lián)建站是一家以網(wǎng)絡(luò)技術(shù)公司,為中小企業(yè)提供網(wǎng)站維護(hù)、成都網(wǎng)站設(shè)計(jì)、成都網(wǎng)站建設(shè)、網(wǎng)站備案、服務(wù)器租用、域名注冊(cè)、軟件開發(fā)、小程序開發(fā)等企業(yè)互聯(lián)網(wǎng)相關(guān)業(yè)務(wù),是一家有著豐富的互聯(lián)網(wǎng)運(yùn)營(yíng)推廣經(jīng)驗(yàn)的科技公司,有著多年的網(wǎng)站建站經(jīng)驗(yàn),致力于幫助中小企業(yè)在互聯(lián)網(wǎng)讓打出自已的品牌和口碑,讓企業(yè)在互聯(lián)網(wǎng)上打開一個(gè)面向全國(guó)乃至全球的業(yè)務(wù)窗口:建站電話聯(lián)系:13518219792所有php里面的值都可以使用函數(shù)serialize()來(lái)返回一個(gè)包含字節(jié)流的字符串來(lái)表示。unserialize()函數(shù)能夠重新把字符串變回php原來(lái)的值。 序列化一個(gè)對(duì)象將會(huì)保存對(duì)象的所有變量,但是不會(huì)保存對(duì)象的方法,只會(huì)保存類的名字。
為了能夠unserialize()一個(gè)對(duì)象,這個(gè)對(duì)象的類必須已經(jīng)定義過(guò)。如果序列化類A的一個(gè)對(duì)象,將會(huì)返回一個(gè)跟類A相關(guān),而且包含了對(duì)象所有變量值的字符串。 如果要想在另外一個(gè)文件中解序列化一個(gè)對(duì)象,這個(gè)對(duì)象的類必須在解序列化之前定義,可以通過(guò)包含一個(gè)定義該類的文件或使用函數(shù)spl_autoload_register()來(lái)實(shí)現(xiàn)。
<?php
// classa.inc:
class A {
public $one = 1;
public function show_one() {
echo $this->one;
}
}
// page1.php:
include("classa.inc");
$a = new A;
$s = serialize($a);
// 把變量$s保存起來(lái)以便文件page2.php能夠讀到
file_put_contents('store', $s);
// page2.php:
// 要正確了解序列化,必須包含下面一個(gè)文件
include("classa.inc");
$s = file_get_contents('store');
$a = unserialize($s);
// 現(xiàn)在可以使用對(duì)象$a里面的函數(shù) show_one()
$a->show_one();
?>
當(dāng)一個(gè)應(yīng)用程序使用函數(shù)session_register()來(lái)保存對(duì)象到會(huì)話中時(shí),在每個(gè)頁(yè)面結(jié)束的時(shí)候這些對(duì)象都會(huì)自動(dòng)序列化,而在每個(gè)頁(yè)面開始的時(shí)候又自動(dòng)解序列化。 所以一旦對(duì)象被保存在會(huì)話中,整個(gè)應(yīng)用程序的頁(yè)面都能使用這些對(duì)象。但是,session_register()在php5.4.0之后被移除了。
在應(yīng)用程序中序列化對(duì)象以便在之后使用,強(qiáng)烈推薦在整個(gè)應(yīng)用程序都包含對(duì)象的類的定義。 不然有可能出現(xiàn)在解序列化對(duì)象的時(shí)候,沒(méi)有找到該對(duì)象的類的定義,從而把沒(méi)有方法的類__PHP_Incomplete_Class_Name作為該對(duì)象的類,導(dǎo)致返回一個(gè)沒(méi)有用的對(duì)象。
所以在上面的例子中,當(dāng)運(yùn)行session_register("a"),把變量放在會(huì)話里之后,需要在每個(gè)頁(yè)面都包含文件classa.inc,而不是只有文件和。
看完以上關(guān)于php對(duì)象的序列化,很多讀者朋友肯定多少有一定的了解,如需獲取更多的行業(yè)知識(shí)信息 ,可以持續(xù)關(guān)注我們的行業(yè)資訊欄目的。
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。
當(dāng)前標(biāo)題:php對(duì)象的序列化-創(chuàng)新互聯(lián)
本文路徑:http://www.rwnh.cn/article26/dghjjg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供品牌網(wǎng)站制作、響應(yīng)式網(wǎng)站、微信小程序、營(yíng)銷型網(wǎng)站建設(shè)、虛擬主機(jī)、靜態(tài)網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容