FuelPHP での文字化け
By takagiwa on Friday, July 18 2014, 16:24 - FuelPHP - Permalink
FuelPHP で開発中のサイトで、文字化けが発生して困った。
DB に保存したデータを表示するときだけ文字化けする。テンプレートやプログラム中に書いた文字列は問題ない。
DB からデータを取り出して mb_detect_encoding をしても UTF-8 と判定してくれてたから、余計に発見が遅れた。
開発中のサイトのフォームから入力したデータも問題なかったけれど、ここがポイントだった。
サイトに流し込むデータの最初のが上がってきたので、とりあえず流し込もうとしたとき、流し込むプログラムに FuelPHP 使わず PDO で直接流し込んでいた。 それでも、UTF-8 なコンソールで正常に表示されていたし、PDO なプログラムから読み出しても正常だった。
けど、FuelPHP からだけはだめ。PDO 使うようにしてもだめ。
最終的に、流し込むプログラムを FuelPHP の task 使って作り直して動かしたら、表示も正常になったけれど、理由がまったくわからない。