최근 작성한 PHP 프로젝트에는 Ajax 기술이 사용되어 사용자 경험이 크게 향상되었지만 동시에 새로운 문제가 발생했습니다. 페이지 인코딩을 UTF-8로 지정하더라도 대부분 왜곡됩니다.
XMLHttp는 반환된 responseText를 처리할 때 UTF-8 인코딩에 따라 responseBody를 디코딩하기 때문입니다. 서버에서 보낸 데이터 스트림이 실제로 UTF-8 인코딩이면 한자가 올바르게 표시됩니다. GBK 또는 다른 인코딩인 경우 위의 상황이 발생합니다.
해결책은 서버에서 반환한 데이터 스트림에 헤더를 추가하여 전송된 데이터 스트림의 인코딩을 나타내므로 XMLHttp가 엉망이 되지 않도록 하는 것입니다.
header('Content-Type:text/html; charset=GB2312');
위 내용은 PHP의 Ajax 중국어 왜곡 문제에 대한 해결 방법입니다. CN)!