基本用法
<?php
$books = array(
'key1' => 'value1',
'key2' => 'value2',
'key3' => array('key4' => 'value4', 'key5' => 'value5')
);
$json = json_encode($books);
$rejson = json_decode($json, true); // true 返回關聯數組
echo '原數組:<br/>';
print_r($books);
echo '<br/><br/>';
echo '經 JSON 編碼後:<br/>';
print $json . "<br/>";
echo '<br/>';
echo '經 JSON 解碼後:<br/>';
print_r($rejson);
echo '<br/><br/>';
// 實例:解碼 Unicode 轉義字符串
$jsonn = '{"error_code":"400","request":"\\/Router\\/aQConnectError","api_code":40006,"error":"\\u4f20\\u5165\\u7684\\u63a5\\u53e3\\u53c2\\u6570\\u51fa\\u9519\\uff0c\\u53c2\\u6570openid\\u672a\\u8bbe\\u5b9a\\u3002"}';
print_r(json_decode($jsonn));
?>
關鍵點
json_encode 將 PHP 陣列/對象轉為 JSON 字符串
json_decode($json, true) 第二參數 true 強制返回關聯數組,否則返回 stdClass 對象
- Unicode 轉義序列(如
\u4f20)會自動解碼為對應字符