本篇文章為大家展示了json_encode與json_decode在PHP中有什么區(qū)別,內(nèi)容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細(xì)介紹希望你能有所收獲。
一、json_encode() 對變量進(jìn)行JSON編碼
語法:json_encode($value[,$options=0])
注意: 1、$value為要編碼的值,且該函數(shù)只對UTF8編碼的數(shù)據(jù)有效;
2、options:由以下常量組成的二進(jìn)制掩碼:JSON_HEX_QUOT, JSON_HEX_TAG, JSON_HEX_AMP, JSON_HEX_APOS,JSON_NUMERIC_CHECK,JSON_PRETTY_PRINT, JSON_UNESCAPED_SLASHES, JSON_FORCE_OBJECT;
3、第二個(gè)參數(shù)一般不需要;
4、json數(shù)據(jù)其實(shí)就是一個(gè)string,可以用var_dump()打印出來看數(shù)據(jù)類型;
5、執(zhí)行成功返回JSON數(shù)據(jù),否則返回FALSE?! ?/p>
示例:
$book = array('a'=>'xiyouji','b'=>'sanguo','c'=>'shuihu','d'=>'hongloumeng'); $json = json_encode($book); echo $json;
瀏覽器打印出的結(jié)果如下:
{"a":"xiyouji","b":"sanguo","c":"shuihu","d":"hongloumeng"}
二、json_decode() 對JSON數(shù)據(jù)進(jìn)行解碼,轉(zhuǎn)換為PHP變量
語法:json_decode($json[,$assoc=false[,$depth=512[,$options=0]]])
注意:1、$json 為待解碼的數(shù)據(jù),必須為utf8編碼的數(shù)據(jù);
2、$assoc 值為TRUE時(shí)返回?cái)?shù)組,F(xiàn)ALSE時(shí)返回對象;
3、$depth 為遞歸深度;
4、$option二進(jìn)制掩碼,目前只支持 JSON_BIGINT_AS_STRING;
5、一般只用前面兩個(gè)參數(shù),如果要數(shù)據(jù)類型的數(shù)據(jù)要加一個(gè)參數(shù)true。
示例:
$book = array('a'=>'xiyouji','b'=>'sanguo','c'=>'shuihu','d'=>'hongloumeng'); $json = json_encode($book); $array = json_decode($json,TRUE); $obj = json_decode($json); var_dump($array); var_dump($obj);
瀏覽器打印出的結(jié)果如下:
array(4) { ["a"]=> string(7) "xiyouji" ["b"]=> string(6) "sanguo" ["c"]=> string(6) "shuihu" ["d"]=> string(11) "hongloumeng" }
object(stdClass)#2 (4) { ["a"]=> string(7) "xiyouji" ["b"]=> string(6) "sanguo" ["c"]=> string(6) "shuihu" ["d"]=> string(11) "hongloumeng" }
兩個(gè)結(jié)果看起來沒多大區(qū)別,但調(diào)用里面的元素時(shí),array和obj的方式是不同的?! ?/p>
$book = array('a'=>'xiyouji','b'=>'sanguo','c'=>'shuihu','d'=>'hongloumeng'); $json = json_encode($book); $array = json_decode($json,TRUE); $obj = json_decode($json); var_dump($array['b']);//調(diào)用數(shù)組元素 echo '<br/>'; var_dump($obj->c);//調(diào)用對象元素
打印結(jié)果如下:
string(6) "sanguo" string(6) "shuihu"
上述內(nèi)容就是json_encode與json_decode在PHP中有什么區(qū)別,你們學(xué)到知識(shí)或技能了嗎?如果還想學(xué)到更多技能或者豐富自己的知識(shí)儲(chǔ)備,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。
網(wǎng)頁標(biāo)題:json_encode與json_decode在PHP中有什么區(qū)別-創(chuàng)新互聯(lián)
轉(zhuǎn)載源于:http://jinyejixie.com/article48/dpphhp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供品牌網(wǎng)站制作、網(wǎng)站收錄、網(wǎng)站設(shè)計(jì)、關(guān)鍵詞優(yōu)化、外貿(mào)建站、建站公司
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容