ラベル mb_convert_encoding の投稿を表示しています。 すべての投稿を表示
ラベル mb_convert_encoding の投稿を表示しています。 すべての投稿を表示

2006年5月10日水曜日

mb_convert_encodingのautoが効かない


$value = mb_convert_encoding($value, 'UTF-8', 'auto');



とやってもうまく文字コードが変換されない。でも、



$value = mb_convert_encoding($value, 'UTF-8', 'EUC-JP,SJIS,ASCII,JIS');



という具合に、直接文字コードを指定してやれば機能する。



うーむ、どうしてだろう。
で、偶然php.iniを眺めていたとき、



mbstring.detect_order = auto



がコメントアウトされているのに気がついた。



「もしかして、このコメントアウトをはずせばいいのか。。?」



と思ってやってみたら、autoが動くようになりました。うーむ、全然気がつかなかった。

2005年7月27日水曜日

mb_convert_encoding

文字コード変換を、

$title = mb_convert_encoding($title, "UTF-8", "auto");

という感じでやろうとしたが、文字化けした。phpマニュアルにもこのように載っているので問題ないはずなのに。。
ググってみたら、どうもautoは問題があるらしい。で、

http://ns1.php.gr.jp/pipermail/php-users/2004-May/022334.html

このページを参考にして、

$title = mb_convert_encoding($title, "UTF-8", "ASCII,JIS,UTF-8,EUC-JP,SJIS");

このようにしたらうまく動いた。めでたしめでたし。