PHPにおけるAjax中国語文字化け問題の解決

巴扎黑
リリース: 2016-11-10 10:56:39
オリジナル
977 人が閲覧しました

最近書いた PHP プロジェクトで Ajax テクノロジーが使用され、ユーザー エクスペリエンスが大幅に改善されましたが、同時に新しい問題も発生しました。つまり、Ajax によって返される応答テキスト内の中国語はほとんどがページエンコーディングをUTF -8に指定しても文字化けします。

これは、返されたresponseTextを処理するときにXMLHttpがUTF-8エンコーディングに従ってresponseBodyをデコードするためです。サーバーから送信されたデータストリームが実際にUTF-8エンコーディングである場合、中国語の文字は正しく表示されますが、GBKの場合は中国語の文字が正しく表示されます。または、他のエンコーディングでも上記の状況が発生します。

解決策は、XMLHttp が混乱しないように、サーバーから返されたデータ ストリームにヘッダーを追加して、送信されたデータ ストリームのエンコーディングを示すことです。


PHPコード

header('Content-Type:text/html; charset=GB2312');
ログイン後にコピー



関連ラベル:
php
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート