結論からいえば、見当違いのミスで悩んでいました(笑)
MySQLの文字コードをUTF8に統一し、PHPでの文字の扱いを間違っていなくても、日本語は文字化けします。
対策としては、PDOの接続文字列に、下記を追加します。
;charset=utf8
PHP 5.3.6より古い場合は、これでは効果がありませんので、オプションで、my.cnfの場所を指定する必要があります。
このあたりは、PHPのマニュアルに記載があります。
以前、調べて解決していたはずなのに、文字化けして、悩みました。
結局、文字化け対策済みの自作ライブラリを用いず、昔の未対応のライブラリを使っていたのが原因でした。
こんなことで、何日も悩んでいたとは。。。
まぁ、よくあることです。
0 件のコメント:
コメントを投稿