[PHP-users 14895]IBM拡張漢字で文字化け

Makoto Maeda majin @ ari.bekkoame.ne.jp
2003年 4月 24日 (木) 21:49:12 JST


前田です。

テスト環境は、RedHat6.2 + PHP4.3.1 です。

「瀬」の左上が「刀」などのIBM拡張漢字を含むSJISファイルを
読み込み、PHPでEUC-JPへ変換するところで文字化けが発生します。
なお、この漢字をフォーム送信から得た場合はPOST/GETを問わず
文字化けしません。
php.iniに何か追加設定する必要があるのでしょうか?
ご教授のほど、よろしくお願いいたします。

以下、サンプルです。

-- sjis_ibm_ext.txt --
瀬(の左上が「刀」の1字。機種依存文字)

-- test.php --
<?
 $kanji   = file('sjis_ibm_ext.txt');
 $utf8    = mb_convert_encoding($kanji[0], "UTF-8", "SJIS-win");
 $eucjpwin= mb_convert_encoding($kanji[0], "eucJP-win", "SJIS-win");
 $eucjp   = mb_convert_encoding($kanji[0], "EUC-JP", "SJIS-win");
?>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=EUC-JP">
</head>
<body>
SJIS:<?=$kanji[0]?><BR> //OK
UTF8:<?=$utf8?><BR>      //OK
EUC-JP:<?=$eucjp?><BR>   //NG
EUC-JP:<?=$eucjpwin?><BR>//NG
</body>
</html>





PHP-users メーリングリストの案内