英語だけのサイトで文字化け
英語だけのコンテンツしか入っていないウェブサイトでところどころ文字化けしているとの報告。Weird symbols だって。
調べてみると、シングルクオートとかダブルクオートのところで現象が発生している。magic quoteの問題かなとphp.iniをいじくってみると、MySQLにはいっているコンテンツがちゃんと表示できなくなる。どうもそういう話ではなさそう。
MySQLで直接コンテンツを参照してみて判明。ところどころ全角のダブルクオートとかシングルクオート、それにハイフン、空白、アッパサンドなどなどがはいっている。
サイト構築したときにラテン文字しか扱うつもりがなかったので、PHPとApacheの文字コードをlatinにしてしまっため、マルチバイト文字がちゃんと解釈できなかったみたい。
どうしようかなとちょっと考えたのち、コンテンツの方の文字列をreplaceすることに。
update table set contents_text=replace(content_text,"”","\"");
こういう感じでコマンドを4つほど。解決しました。