日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關咨詢
選擇下列產(chǎn)品馬上在線溝通
服務時間:8:30-17:00
你可能遇到了下面的問題
關閉右側工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
闡述建立JavaScript對象的使用及相關技巧

串行化后的字符串如果被反串行化的變量是為了建立JavaScript對象,則成功恢復該對象的結構后,PHP將自動嘗試執(zhí)行該對象的__wakeup()成員函數(shù)(如果其存在),屏蔽這個特性只需將其設為空即可。

在這個傳輸過程中,我們知道,實際上只能夠傳遞字符流,字符流是一維(扁平)的,然而很多對象卻是多維的,如果要傳遞的對象是一個字符串,那么很簡單,我們直接將其作為傳遞的內(nèi)容就可以了,如果要傳遞的對象是一個數(shù)組或者其他的結構呢,我們就需要用字符流來描述他,就比如在電話里面,我問你的名字是什么。

你會告訴我,你的名字是張三、李四,而我問你,你的長相如何呢,你就需要用文字向我描述了,我們進行數(shù)據(jù)傳遞的媒介往往和這條電話線路一樣,只能傳遞字符流,而我們描述對象的過程,實際上就是串行化的過程。#t#

另外,串行化也可以用于對對象的持久化存儲,也許你曾經(jīng)也和我一樣,想著在數(shù)據(jù)庫的某一個字段中存儲一個對象,現(xiàn)在我們可以非常簡單的做到這一點,并且,你的這個數(shù)據(jù)庫字段不需要設定為特殊格式,設定為varchar就可以了(當然,如果對象很大,你可能需要設定為text)。

好了,我想What和Why的問題你都了解了,本節(jié)最后我們來講點理論性強一些的內(nèi)容,就是如何使用PHP串行化和反串行化數(shù)據(jù),如何將JavaScript對象串行化(即變?yōu)镴SON格式)和如何將其反串行化,最后則是如何將建立JavaScript對象的串行化建立關系。

PHP為我們提供了兩個函數(shù),用來進行串行化和反串行化的操作,這兩個函數(shù)分別是:serialize()和unserialize(),他們適用于PHP4和PHP5,下面分別進行講解:

serialize()
(PHP 4, PHP 5, PECL axis2:0.1.0-0.1.1)serialize — 獲得一個可存儲的表述值

說明
string serialize ( mixed $value )獲得一個可存儲的表述值本函數(shù)用于無損的存儲或者傳遞PHP變量值和結構。如果需要將已經(jīng)串行化的值轉回PHP變量,可以使用unserialize()函數(shù)。

參數(shù)
即被串行化的表達式。serialize()處理除資源指針之外的所有類型,你甚至可以將含有指向自身元素的數(shù)組串行化。你串行化的含有循環(huán)指向的數(shù)組或者對象一樣會被存儲,其他的指向則會丟失。

當串行化對象時,PHP會嘗試首先調(diào)用其成員函數(shù)__sleep()。這將允許對象在被串行化之前進行諸如最后的清理工作等。同樣地,當使用unserialize()函數(shù)將對象恢復時,會調(diào)用成員建立JavaScript對象返回值返回一個可以被存儲在任何地點的包含對象的字節(jié)流表達式的字符串。


當前文章:闡述建立JavaScript對象的使用及相關技巧
標題路徑:http://www.5511xx.com/article/djdoddg.html