在php中,可以json_decode()函數(shù)來將JSON字符串?dāng)?shù)據(jù)轉(zhuǎn)換為數(shù)組。默認(rèn)情況下,json_decode()函數(shù)將返回一個(gè)對(duì)象,但當(dāng)?shù)诙€(gè)參數(shù)設(shè)置為布爾值true時(shí),則可將JSON數(shù)據(jù)解碼為關(guān)聯(lián)數(shù)組。
本教程操作環(huán)境:windows7系統(tǒng)、PHP7.1版,DELL G3電腦
在PHP中可以使用json_decode()函數(shù)將JSON編碼的字符串轉(zhuǎn)換為適當(dāng)?shù)腜HP數(shù)據(jù)類型。默認(rèn)情況下,json_decode()函數(shù)將返回一個(gè)對(duì)象;但是,可以指定第二個(gè)參數(shù)為一個(gè)布爾值true,這樣JSON值將被解碼為關(guān)聯(lián)數(shù)組。
基本語法:
json_decode( $json, $assoc = FALSE, $depth = 512, $options = 0 )
參數(shù):json_decode()函數(shù)接受如上所述的四個(gè)參數(shù),如下所述:
● json:它包含需要解碼的JSON字符串。它僅適用于UTF-8編碼的字符串。
● assoc:它是一個(gè)布爾變量。如果為true,則返回的對(duì)象將轉(zhuǎn)換為關(guān)聯(lián)數(shù)組。
● depth:它表示用戶指定的遞歸深度。
● options:它包括JSON_OBJECT_AS_ARRAY的位掩碼,JSON_BIGINT_AS_STRING,JSON_THROW_ON_ERROR。
返回值:此函數(shù)以適當(dāng)?shù)腜HP類型返回已編碼的JSON值。如果json無法解碼或者編碼數(shù)據(jù)比遞歸限制更深,則返回NULL。
示例:把json轉(zhuǎn)換成關(guān)聯(lián)數(shù)組
<?php // 在PHP變量中存儲(chǔ)JSON數(shù)據(jù) $json = '{"Peter":65,"Harry":80,"John":78,"Clark":90}'; var_dump(json_decode($json, true)); ?>
上面示例的輸出將如下所示:
推薦學(xué)習(xí):《PHP視頻教程》