本文講述了PHP的Json中文處理解決方案。分享給大家供大家參考,具體如下:
Json是現在被廣泛使用的用於傳遞字串的格式,相比xml更顯得簡單易懂以及更方便操作,php下就兩個函數,json_encode() AND json_deconde()。不過json對中文的支援並不是很好,如果使用json_encode()處理如數組,數組中若存在中文,則會作空白處理。
解決中文的一種方法就是先將中文轉換為另一種編碼格式,然後再使用json_encode(),最後再用解碼把json字串進行解碼。還有一種方式就在php新版本中得到了解決,在下面的程式碼為展示。
以下為程式碼範例
<?php header("Content-type:text/html;charset=utf-8"); $arrayName = array('city' => '广东','goods'=>'cookies' ); $arr = json_encode($arrayName); echo $arr."</br>"; var_dump(json_decode($arr)); echo "</br>"; echo urldecode(json_encode(ch_json($arrayName)))."</br>"; /* 需要php版本在5.4以上 echo json_encode($arrayName,JSON_UNESCAPED_UNICODE); */ function ch_json($arr){ if(is_array($arr)){ foreach ($arr as $key => $value) { $arr[urlencode($key)] = ch_json($value); } }else{ return urlencode($arr); } return $arr; } ?>
希望本文所述對大家PHP程式設計有所幫助。
更多PHP的Json中文處理解決方案相關文章請關注PHP中文網!