2010-11-21 4 views
0

PHPを使用して言語ファイルを読み込む多言語Webサイトを構築しています。言語ファイルの段落は、define()定数で設定されます。 ブラウザでページを開くと、「?」のような文字列が表示されます。マークアップでは、utf-8に設定されたエンコードがあります。すべての未知の文字をhtml文字エンティティに置き換える以外に、それを動作させるには何ができますか?charcter encodingとPHP

+0

さらにもう一つ指摘しておきます。言語ファイルはinclude()関数でスクリプトに含まれています。スクリプト内で言語変数を宣言すると、文字は正常に表示されます。 –

答えて

1
  1. あなたのページ

    <メタHTTP-当量に次のタグを追加することを確認し、

  2. は、あなたのHTMLファイルやテンプレートがUTF8であることを確認し、必ず言語ファイルはUTF8であることを確認してください= "Content-Typeの" コンテンツ= "text/htmlの;のcharset = UTF-8" />

限り、あなたのデータはUTF8であるとして、テンプレートファイルとHTMLファイルは、AR e utf8と明示的にhtmlページがutf8であることを指定すると、うまくいくはずです。

編集:コード埋め込み事は( ':;のcharset = UTF-8テキスト/ HTMLのContent-Type'

+0

文字エンコーディングについてよくわかりません...私の変数は次のようになります:define( 'COMM_NAV_ABOUT'、 'Σχετικάμεεμάς');これは "????????????"と出力されます。 –

+0

ファイルがutf8として保存されていることを確認してください。 – Ben

+0

ありがとうございます。私の主なPHPエディタには、文字エンコーディングを変更するオプションはありません。私はメモ帳++でファイルを開いて、utf-8とVoilaとして保存しました!皆さん、ありがとうございました! –

3

ヘッダopening.weirdタグにスペースを挿入する必要が...少し壊れて、今日です);

PHPコードの先頭にこの行を使用してヘッダーを送信します。また、動的ページの検証でUTF警告を取り除くのに役立ちます。

+0

私はそれを試みた、それは助けにはなりませんでした –

関連する問題