1 つの側面はサーバー ソリューションです:
Apache設定: AddDefaultCharset UTF-8
別の側面として、私も遭遇した次の事件を参照してください。
UTF-8 の Web ページは他人からのアクセスが許可されているため、多くの人が入力後に空白になると言います。ブラウザが自動的に UTF-8 のテキスト エンコーディングを選択しないことがわかりました。WindowsオペレーティングシステムでブラウザとしてIEを使用する場合。この問題はよく発生します。UTF-8 エンコードを使用して Web ページを閲覧する場合、ブラウザはページで使用されているエンコードを自動的に検出できません (つまり、「自動選択」エンコード形式が設定されていない場合)。 Web ページでエンコード形式が宣言されている場合でも:
コード:
これにより、中国語の UTF-8 エンコーディングを含む一部のページで空白の出力が生成されます。
Mozilla、Mozilla Firefox、または Sarafi ブラウザを使用している場合、この問題は発生しません。これは、IE が Web ページのエンコードを解析するときに、HTML 内のタグを優先し、次に HTTP ヘッダー内の情報を優先するのに対し、Mozilla シリーズのブラウザーはその逆を行うためです。
UTF-8 は 1 つの漢字を表すのに 3 バイトを使用するため、通常の GB2312 または BIG5 は 2 バイトを使用します。上記の理由により、ページを出力する際、ブラウザがコンテンツを解析して出力する際、その前に奇数個の全角文字があると、IE は解析時に UTF-8 を 2 バイトとして扱います。このとき、この半分の漢字が < と結合して文字化けし、IE が読み終えることができなくなります。