在PHP中,可以使用json_decode
函數來將JSON格式的字符串解碼為PHP對象或數組。
使用json_decode
的基本語法如下:
mixed json_decode ( string $json [, bool $assoc = false [, int $depth = 512 [, int $options = 0 ]]] )
參數說明:
$json
:要解碼的JSON格式的字符串。
$assoc
:可選參數,指定返回值是否為關聯數組。默認為false
,返回對象。
$depth
:可選參數,指定最大解碼深度。默認為512
。
$options
:可選參數,指定解碼選項。默認為0
。
示例代碼:
$jsonStr = '{"name":"John", "age":30, "city":"New York"}';
// 解碼為對象
$obj = json_decode($jsonStr);
echo $obj->name; // 輸出 "John"
// 解碼為關聯數組
$arr = json_decode($jsonStr, true);
echo $arr['name']; // 輸出 "John"
注意事項:
如果解碼失敗,json_decode
函數將返回null
。
如果JSON字符串中包含特殊字符,如中文字符,則需要保證JSON字符串的編碼與PHP腳本文件的編碼一致,否則可能會導致解碼失敗。可以使用json_decode($jsonStr, true, 512, JSON_UNESCAPED_UNICODE)
來解決該問題,其中JSON_UNESCAPED_UNICODE
選項可以保持中文字符的原樣輸出。