PHP 機種依存文字を変換の履歴
以下php4.4.9で確認
「①」「㈱」などの機種依存文字
euc -> sjis は変換してくれるけど、
euc -> UTF-8 が変換してくれないっぽい。
eucjp-win, sjis-winにすれば変換できる
$enc = mb_detect_encoding($data, "eucjp-win,sjis-win,UTF-8,ASCII"); $data = mb_convert_encoding($data, $to_enc, $enc);
「髙(はしごたか)」「﨑(たつさき)」などの機種依存文字
eucjp-win -> UTF-8 はだめ。
EUC-JP -> sjis-win -> UTF-8 でOK
mb_convert_encoding( mb_convert_encoding($data, 'sjis-win', 'EUC-JP'), 'UTF-8', 'sjis-win' );
参考
http://shimax.cocolog-nifty.com/search/2007/12/phpeucjputf8_...
PHP5.2だと eucJP-win の代わりに cp51932 が使える?
http://hal456.net/qdmail/irregular_char