php 的json_encode能把數組轉換為json格式的字符串。字符串沒有縮進,中文會轉為unicode編碼,例如\u975a\u4ed4。人閱讀比較困難。現在這個方法在json_encode的基礎上再進行一次美化處理。使人能方便閱讀內容。
1. 使用 json_encode 輸出
<?php
header('content-type:application/json;charset=utf8');
$arr = array(
'status' => true,
'errMsg' => '',
'member' =>array(
array(
'name' => '李逍遙',
'gender' => '男'
),
array(
'name' => '趙靈兒',
'gender' => '女'
)
)
);
echo json_encode($arr);
?>
輸出:
{"status":true,"errMsg":"","member":[{"name":"\u674e\u900d\u9065","gender":"\u7537"},{"name":"\u8d75\u7075\u513f","gender":"\u5973"}]}
可以看出,這種格式人閱讀很困難。
2. 使用 jsonFormat 輸出
<?php
/** Json數據格式化
* @param Mixed $data 數據
* @param String $indent 縮進字符,默認4個空格
* @return JSON
*/
function jsonFormat($data, $indent=null){
// 對數組中每個元素遞歸進行urlencode操作,保護中文字符
// 查看本欄目