>백엔드 개발 >PHP 문제 >PHP json 데이터가 중국어로 왜곡되면 어떻게 해야 합니까?

PHP json 데이터가 중국어로 왜곡되면 어떻게 해야 합니까?

藏色散人
藏色散人원래의
2023-02-03 11:14:114275검색

php json 데이터의 중국어 왜곡 문제에 대한 해결 방법: 1. 해당 php 파일을 엽니다. 2. 중국어를 정상적으로 출력하려면 "json_encode()" 메서드에 "JSON_UNESCAPED_UNICODE" 매개 변수를 추가합니다.

PHP json 데이터가 중국어로 왜곡되면 어떻게 해야 합니까?

이 튜토리얼의 운영 환경: Windows 10 시스템, PHP 버전 8.1, DELL G3 컴퓨터

php json 데이터의 중국어 왜곡 문제가 발생하면 어떻게 해야 합니까?

php를 json으로 변환한 후 중국어 문자가 깨지는 문제 해결

:

php에서 데이터베이스 데이터를 읽으려면 var_dump / print_r을 사용하여 중국어 데이터를 올바르게 읽을 수 있지만 json 형식으로 변환한 후에는 중국어 데이터가 "u5c0fu660e"와 유사합니다.

해결책:

json_encode() 메서드에 JSON_UNESCAPED_UNICODE 매개 변수를 하나 더 추가합니다. ;

JSON_UNESCAPED_UNICODE를 추가하는 이유는 쿼리 후:

php의 json_encode는 다음과 같습니다. 처리할 때 인코딩됨 중국어 데이터와 "u5c0fu660e"와 유사한 문자열이 얻어지므로 데이터를 읽기가 불편합니다. JSON_UNESCAPED_UNICODE를 추가한 후에는 중국어 코드 유니코드를 컴파일할 필요가 없으며 출력은 일반 중국어

문제 코드가 됩니다. :

//读取所有数据
        public function SelectAll(){
             $sql = 'SELECT * FROM `websql`';
             mysqli_query($this->link,'set names utf8');
             $results = mysqli_query($this->link, $sql);
            while($row = mysqli_fetch_assoc($results)){
               array_push($this->cjarr,$row);
            }
           
        }
        
        public function a(){
            print_r($this->cjarr);//未转json格式前
            echo &#39;<br><br>&#39;;
            echo json_encode($this->cjarr);//转json格式后
        }

문제 출력:

PHP json 데이터가 중국어로 왜곡되면 어떻게 해야 합니까? 해결 코드:

//读取所有数据
        public function SelectAll(){
             $sql = &#39;SELECT * FROM `websql`&#39;;
             mysqli_query($this->link,&#39;set names utf8&#39;);
             $results = mysqli_query($this->link, $sql);
            while($row = mysqli_fetch_assoc($results)){
               array_push($this->cjarr,$row);
            }
           //添加JSON_UNESCAPED_UNICODE 后解决该问题
           $this->jsonCjarr = json_encode($this->cjarr,JSON_UNESCAPED_UNICODE);
        }
        
        public function a(){
            print_r($this->cjarr);//未转json格式前
            echo &#39;<br><br>&#39;;
            echo $this->jsonCjarr; //输出
        }

문제 해결 후 출력:

PHP json 데이터가 중국어로 왜곡되면 어떻게 해야 합니까? 추천 학습: "

PHP Video Tutorial

"

위 내용은 PHP json 데이터가 중국어로 왜곡되면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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