"일꾼이 일을 잘하려면 먼저 도구를 갈고 닦아야 한다." - 공자, 『논어』.
첫 장 > 프로그램 작성 > PHP의 json_encode() 함수를 사용하여 JSON의 특수 문자를 올바르게 인코딩하는 방법은 무엇입니까?

PHP의 json_encode() 함수를 사용하여 JSON의 특수 문자를 올바르게 인코딩하는 방법은 무엇입니까?

2024년 11월 17일에 게시됨
검색:276

How to Correctly Encode Special Characters in JSON with PHP\'s json_encode() Function?

JSON 인코딩 및 특수 문자

json_encode() 함수를 사용하여 배열을 인코딩하는 동안 특수 문자가 포함된 요소가 다음으로 변환될 수 있습니다. 빈 문자열. 이 동작은 저작권 또는 상표 기호와 같은 문자에서 특히 두드러집니다.

이 문제를 해결하려면 모든 문자열 데이터를 JSON으로 인코딩하기 전에 UTF-8로 인코딩했는지 확인하세요. 이는 utf8_encode() 함수와 함께 array_map()을 사용하여 달성할 수 있습니다:

$arr = array_map('utf8_encode', $arr);
$json = json_encode($arr);

PHP 매뉴얼에 언급된 대로 json_encode()에서는 모든 문자열 데이터가 UTF-8로 인코딩되어야 합니다. JSON 인코딩 전에 배열 요소를 UTF-8로 인코딩함으로써 특수 문자가 JSON 출력에 올바르게 표시되는지 확인합니다.

명확성을 위해 UTF-8이 있는 경우와 없는 경우의 배열 인코딩 결과를 비교해 보겠습니다. 인코딩:

UTF-8 인코딩 없음:

$arr = ["funds" => "ComStage STOXX®Europe 600 Techn NR ETF"];
$json = json_encode($arr); // {"funds":null}

UTF-8 인코딩 사용:

$arr = array_map('utf8_encode', ["funds" => "ComStage STOXX®Europe 600 Techn NR ETF"]);
$json = json_encode($arr); // {"funds":"ComStage STOXX\u00c2\u00aeEurope 600 Techn NR ETF"}

UTF-8 인코딩을 적용하면 특수 문자가 JSON 출력에 올바르게 표시됩니다. 적절한 인코딩을 위해서는 utf8_encode()를 일관되게 사용하는 것을 잊지 마세요.

릴리스 선언문 이 글은 1729242557에서 재인쇄되었습니다. 침해 내용이 있는 경우, [email protected]으로 연락하여 삭제하시기 바랍니다.
최신 튜토리얼 더>

부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.

Copyright© 2022 湘ICP备2022001581号-3