MySQL 쿼리의 결과를 JSON 형식으로 인코딩해야합니다.MySQL 데이터베이스의 특수 문자 json_encode
데이타베이스의 이름은 utf8_unicode_ci
입니다.
특히, PHP 함수 json_encode
을 적용 할 때 null 값을 생성하는 데이터베이스에 저장된 특수 문자 (예 : €)가 있습니다.
어떻게 해결할 수 있습니까?
MySQL 쿼리의 결과를 JSON 형식으로 인코딩해야합니다.MySQL 데이터베이스의 특수 문자 json_encode
데이타베이스의 이름은 utf8_unicode_ci
입니다.
특히, PHP 함수 json_encode
을 적용 할 때 null 값을 생성하는 데이터베이스에 저장된 특수 문자 (예 : €)가 있습니다.
어떻게 해결할 수 있습니까?
MySQL 데이터베이스 연결이 UTF-8로 설정되어 있지 않아 소스 데이터베이스가 UTF-8 인 경우에도 ISO-8859-1 문자가 반환됩니다.
Those characters will break json_encode()
은 UTF-8 문자 집합에서 유효하지 않으므로 json_encode()
입니다.
아마도 연결 인코딩을 UTF-8로 설정해야 할 것입니다. 이를 수행하는 방법은 사용중인 라이브러리에 따라 다릅니다. 기능의 mysql_*
가족
는 하나의 방법입니다
mysql_query("SET names utf8;");
또는 5.0.7> MySQL은
, 새로운mysql_set_charset("utf8");
관련 : [함께 문자열을 떨어 뜨리고에서로 json_encode()를 유지하는 방법 잘못된 문자] (http://stackoverflow.com/questions/4663743/how-to-keep-json-encode-from-dropping-strings-with-invalid-characters) –