-2
4

2 に答える 2

0

この問題が発生するのは、ブラウザーに UTF-8 であることを伝えても、実際には出力が UTF-8 ではないためです。その問題を解決する必要があります。

適切な UTF-8 になるように出力を修正して修正すると、問題は修正されます。UTF-8 はこの記号 (およびその他の記号) を表示できるからです。文字セットを ANSI 文字セットに変更して修正すると、この記号をサポートしていない可能性のあるコードページで出力されます。

µ正しく出力するには、または.html エンティティとして出力できますµ。ここでこれを行うと、シンボルも正しく表示されますが、実際の出力は UTF-8 ではないことに注意してください。そのため、ページに別のシンボルが必要な場合は、同じ問題が発生します!

編集

私は今あなたの編集を見ます。ハードコードされた文字で動作する場合、PHP は正しいですが、フェッチされたデータには適切なエンコーディングがありません。これは、データベース、テーブル、および/または特定の列に Unicode 照合順序を指定することで解決できます。別の方法は、関数iconvを使用して、クエリを実行した後にデータベースからデータを UTF-8 に変換することです。

于 2013-06-30T11:04:58.840 に答える