首頁  >  文章  >  後端開發  >  php處理Json中文的方法

php處理Json中文的方法

怪我咯
怪我咯原創
2017-07-04 12:02:241482瀏覽

這篇文章主要介紹了PHP的Json中文處理解決方案,涉及php編碼轉換的相關操作技巧,具有一定參考借鑒價值,需要的朋友可以參考下

本文講述了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(&#39;city&#39; => &#39;广东&#39;,&#39;goods&#39;=>&#39;cookies&#39; );
  $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處理Json中文的方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn