スキップしてメイン コンテンツに移動

投稿

4月, 2012の投稿を表示しています

charaset=EUC-JP

サンプルコードを張っておくよ。 テキストエディタでEUC-JPで保存してね。 サンプルを確認したサーバー環境: ・PHP Version 5.3.2-1ubuntu4.14 サンプルを確認したOSとブラウザ: ・XP で IE8、Google Chrome ・Ubuntu 10.04 で Google Chrome <? $chr = ""; $hex = ""; if (isset($_POST["check_char"])) {     //  ポストされた文字を16進に変換     $chr = $_POST["check_char"];     $arr = unpack("C*", $chr);     $hex = "";     for ($j = 1; $j <= count($arr); $j++) {         $hex.= base_convert($arr[$j], 10, 16);     } } ?> <html> <head> <meta http-equiv="content-language" content="ja" /> <meta http-equiv="content-type" content="text/html; charset=EUC-JP" /> <title>EUC-JP</title> </head> <body> <form action="" method="post" accept-charset="EUC-JP"> <p>チェックする文字:<input type="text" name="check_char" value="<?=$chr?>" /></p> <p>ポストさ...

Internet Explorer は 3バイトEUC-JP を表示できない

Firefox も Google Chrome も EUC-JP の3バイト文字を表示できるのに対し、 Internet Explorer は表示できない。 Internet Explorer で EUC系の文字をちゃんと表示しようと思ったら、 PHPだと、CP51932でエンコーディングしてあげる。 // CP932な文字をCP51932へエンコード。"伹" は 0xF9B2 $ecuchar = mb_convert_encoding("伹", "CP51932", "SJIS-win"); // CP932な文字をEUC-JP、eucJP-winへエンコードすると、 // 3バイト文字にエンコードされる文字があるので注意。 // CP932な文字をEUC-JPへエンコード。"伹" は 0x8FB0E3 $ecuchar = mb_convert_encoding("伹", "EUC-JP", "SJIS-win"); // CP932な文字をeucJP-winへエンコード。"伹" は 0x8FB0E3 $ecuchar = mb_convert_encoding("伹", "eucJP-win", "SJIS-win"); 2012/05/15 追記 ポストするときは、2バイト文字でポストするのにね。 charset=EUC-JP