1

既存の回答を調べましたが、この特定の状況を見つけることができません。私が間違っている場合はお知らせください。

最近PHPを使い始めました。私は問題なく構造とすべてを作成しました

Mi インデックスはそのような index.php であり、次の内容で作成されます。

ヘッダ

コンテンツ

フッター

多言語にしたいので、変数を定義できるようにファイルを作成しています

 $lang['TITLE'] = 'Título';

私はechoこれらの変数を表示 するために使用し、 Títuloincludeなどの特殊文字を使用しても問題なく表示されますが、ファイル content.html をロードするため に使用している時点で、次のようなエンコードエラーが発生しました

interés - interés búsquedas - búsquedas

つまり、echoステートメントからテキストを作成すると、すべてが適切に表示されますが、 を使用してファイルをロードするとinclude、インクルード ファイルのみがエラーを表示します。

すでにCHARSETをいろいろ使ってみたのですが、echoの結果が間違っているのか、includeの結果が間違っているのか。

私が試した最後のことは、UTF-8エンコーディングを標準化するようにサービスを設定するmb_ことですが、この方法では特殊文字が表示されません

inter é s = インター

どうもありがとう、私のエラーが何であるか、または何ができるか教えてください。

4

1 に答える 1

0

includeファイルでもechoテキストでも、違いはありません。PHP は、これらの操作でエンコーディングの変換やエンコーディングの処理を行いません。ソースコードにある生のテキストを変更せずに直接出力するだけです。

あるファイルのテキストが機能し、別のファイルのテキストが機能しない場合、それはそれらのファイルのエンコードが異なっていることを意味します。テキスト エディタで同じエンコーディングで保存します。

おそらく、これら 2 つのファイルで異なるContent-Typeヘッダーを HTML タグまたはその他の方法で出力している可能性があります。そのリモートの可能性を確認してください。

詳細情報が必要な場合は、すべてのプログラマーがテキストを操作するためのエンコーディングと文字セットについて絶対に積極的に知っておく必要があることと、 Web アプリで Unicode を前後に処理することを参照してください。

于 2013-08-14T16:00:09.823 に答える