2012-11-21 18 views
9

私はこれらの漢字があります。PHPで漢字を正しく表示する方法は?

汉字/漢字''test 

を私はそれが表示さ

echo utf8_encode($chinesevar); 

行う場合

??/??''test 

または私はちょうど簡単な

echo $chinesevar 

それを行う場合でも、 s

<メタ>タグをUTF-8のthingyまたはini_set UTF-8のものやheader()を使用せずに表示するにはどうすればよいでしょうか? UTF-8のもの?

+2

?ウェブページで? utf-8にも設定されているウェブページですか?レンダリングパイプライン全体を通して同じ文字セットを維持する必要があります。 –

+1

[私のためにうまくいく](http://codepad.org/aWn4l6Gx)あなたのセットアップは何ですか? – Neal

+0

どのエディタで.phpを作成していますか? – Weacked

答えて

11

シンプル:

  1. それはUTF-8を使用してページを解釈すべきであることをブラウザに指定するには、UTF-8
  2. 出力HTTPヘッダーでソースコードを保存します。

    header('Content-Type: text/html; charset=utf-8'); 
    

完了。

utf8_encodeは、Latin-1エンコード文字列をUTF-8に変換するためのものです。あなたはそれを必要としません。

詳細については、Handling Unicode Front To Back In A Web Appを参照してください。あなたのファイルはBOMなしで、あなたのウェブサーバがUTF8でサイトを提供することをUTF8である

+0

の最初の子であることを確認してください。 'colation'の列は何ですか? –

1

ルック

HTML:

header('Content-Type: text/html; charset=utf-8'); 
:PHPで

<meta http-equiv="content-type" content="text/html; charset=UTF-8" /> 

データベースから作業している場合、データからテキストを読み取った場合、データベースはUTF-8であると見なしますベース。

+1

私はヘッダーを追加して、ソースコードファイルをutf8エンコーディングで保存しますが、問題は残ります。私はmysqlを使って作業しています –

0

おそらく、次の解決方法を見てみましょう:

  1. あなたデータベーステーブルフィールド COLLATEをutf8_unicode_ci内
  2. チェックする必要がありますあなたの記録がデータベース内の正しい文字を表示している場合...
  3. がデータベースに

    mysqli_set_charset($詐欺、 "UTF8")を接続した後、あなたのphpに以下の行を追加します。utf8にあなたのhtmlを設定します。あなたがこれを表示している

http://www.w3schools.com/php/func_mysqli_set_charset.asp

関連する問題