이 글에서는 주로 PHP에서 중국어를 탈출하지 않고 json_decode를 구현하는 방법을 소개합니다. 중국어를 탈출하지 않고 json_decode를 구현하기 위한 php5.4+ 및 5.3 버전의 구체적인 조작 기술과 관련 주의 사항을 예제 형식으로 분석합니다. 참고로
이 문서의 예에서는 PHP가 중국어를 이스케이프 처리하지 않고 json_decode를 구현하는 방법을 설명합니다. 참조를 위해 모든 사람과 공유하세요. 세부 사항은 다음과 같습니다.
기본적으로 PHP의 json_decode 메소드는 특수 문자를 이스케이프하고 중국어를 유니코드
인코딩 형식으로 변환합니다. Unicode
编码形式。
这使得数据库查看文本变得很麻烦。所以我们需要限制对于中文的转义。
对于PHP5.4+版本,json_decode函数第二个参数,可以用来限制转义范围。
要限制中文,使用JSON_UNESCAPED_UNICODE
PHP5.4+ 버전의 경우 json_decode 함수의 두 번째 매개변수를 사용하여 이스케이프 범위를 제한할 수 있습니다.
🎜🎜중국어를 제한하려면JSON_UNESCAPED_UNICODE
매개변수를 사용하세요. 🎜json_encode($a, JSON_UNESCAPED_UNICODE);🎜🎜🎜PHP5.3 버전의 경우 먼저 ASCII 127 이상의 문자를 HTML 값으로 변환하여 json_decode 함수에 의한 트랜스코딩을 방지할 수 있습니다. 🎜🎜🎜
function my_json_encode($arr) { //convmap since 0x80 char codes so it takes all multibyte codes (above ASCII 127). So such characters are being "hidden" from normal json_encoding array_walk_recursive($arr, function (&$item, $key) { if (is_string($item)) $item = mb_encode_numericentity($item, array (0x80, 0xffff, 0, 0xffff), 'UTF-8'); }); return mb_decode_numericentity(json_encode($arr), array (0x80, 0xffff, 0, 0xffff), 'UTF-8'); }
위 내용은 PHP가 중국어 메소드를 이스케이프하지 않고 json_decode를 구현하는 방법 소개의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!