UTF-8にmb_convert_encoding()する際の機種依存文字対応

2010/11/10

SJIS、EUC-JPからUTF-8に変換する場合、Windows拡張の機種依存文字を含んでいると文字化けする。 その場合、文字コードパラメータを「-win」してやると解決できるようだ。

//Shift-JIS → UTF-8
mb_convert_encoding($value, 'UTF-8', 'SJIS');
mb_convert_encoding($value, 'UTF-8', 'sjis-win'); //Windows拡張対応

//EUC-JP → UTF-8
mb_convert_encoding($value, 'UTF-8', 'EUC-JP');
mb_convert_encoding($value, 'UTF-8', 'eucJP-win'); //Windows拡張対応