現在、PHP Web サービスを使用して MySQL から情報を取得しています。中国語/日本語/フランス語の文字を含む複数の言語を扱っています。中国語/日本語と他のいくつかの言語の表示に問題があります。
<?php
echo "你好";
?>
たとえば、簡単な漢字をエコーしようとすると、代わりに "ä½ å¥½" と表示され、どうすればよいかわかりません。
お知らせ下さい。
ありがとうございました
現在、PHP Web サービスを使用して MySQL から情報を取得しています。中国語/日本語/フランス語の文字を含む複数の言語を扱っています。中国語/日本語と他のいくつかの言語の表示に問題があります。
<?php
echo "你好";
?>
たとえば、簡単な漢字をエコーしようとすると、代わりに "ä½ å¥½" と表示され、どうすればよいかわかりません。
お知らせ下さい。
ありがとうございました
おそらく文字エンコーディングを設定する必要があります。
これは従来、html content-type ヘッダーを設定することによって行われます。通常、デフォルトは次のとおりです。
Content-Type: text/html; charset=ISO-8859-1
関数を使用して、php 経由でこれを変更できheader()
ます。
header('Content-Type: text/html; charset=utf-8');
その他のリソース:
http://www.w3.org/International/questions/qa-html-encoding-declarations http://en.wikipedia.org/wiki/Character_encodings_in_HTML
1) ファイルが UTF-8 (BOM なし) として保存されていることを確認します。
2)ブラウザにUTF-8であることを伝えます(hafichukが説明したように)
3) ブラウザが中国語/日本語/その他の文字を含むフォントを使用していることを確認します (大量のフォントにはそれらが含まれていません。1 と 2 を実行した場合、これが問題になる可能性が非常に高くなります)。