>백엔드 개발 >PHP 튜토리얼 >PHP Json 중국어 처리 솔루션

PHP Json 중국어 처리 솔루션

高洛峰
高洛峰원래의
2016-12-30 13:45:591148검색

이 글에서는 PHP의 Json 중국어 처리 솔루션에 대해 설명합니다. 참고할 수 있도록 자세한 내용은 다음과 같습니다.

Json은 문자열을 전송하는 데 널리 사용되는 형식으로, XML에 비해 이해하기 쉽고 작동하기 쉽습니다. PHP., json_encode() 및 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 프로그래밍에 종사하는 모든 분들께 도움이 되기를 바랍니다.

PHP의 Json 중국어 처리 솔루션과 관련된 더 많은 기사를 보려면 PHP 중국어 웹사이트를 주목하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.