utf8_unicode_ci 照合を使用して MySQL DB をセットアップしました。その上のすべてのテーブルと列には同じ照合があります。
私の Doctrine 設定には接続オプションとして SET NAMES utf8 があり、私の html ファイルは utf8 charset を使用しています。
これらのテーブルに保存されたテキストには、アクセント付きの文字 (á、è など) が含まれています。
問題は、コンテンツをDBに保存すると、ISOをUTF8テーブルに保存しようとしたときのように、奇妙な文字で保存されることです。(例: Notícias)
私が見つけた唯一の回避策は、保存前に utf8_decode を実行し、印刷前に utf8_encode を実行することです。
つまり、何らかの理由で、その間にある何かが iso で utf8 を台無しにしていることを意味します。
何がありますか?
ありがとう。
編集:
保存する前にエンコードし、印刷する前にデコードするように設定しましたが、正しく印刷されますが、DB では文字が次のように変わります。
XPTÓ -> XPTÓ“</p>
これにより、DB で「XPTÓ」を検索できなくなります...