①(まる1)とか(はしごだか)とか、SJIS、EUCでは
サポートされていない、機種依存、環境依存文字を、PHPで
mb_convert_encodingで単純に"SJIS","EUC-JP"で変換すると、
文字化けする(UTF-8はOK)
そこで、SJIS-winとかcp51932とか、送るんだけど、
それについてまとめる。
■お題
以下の文字をUTF-8(BOMなし)で保存する
(ファイル名utf8n.txt)
これを表示する
■SJIS編
【内容】
以下のPHPファイルをSJISで保存する
(ファイル名sjis.php)
【結果】
■EUC編
【内容】
以下のPHPファイルをEUCで保存する
(ファイル名euc.php)
【結果】
■参考までに
どのようなエンコードがサポートされているかは、
サポートされる文字エンコーディング
http://php.net/manual/ja/mbstring.supported-encodings.php
に書かれている。
また、上記のCPの番号とコードの関係は
Microsoftコードページ932
https://ja.wikipedia.org/wiki/Microsoft%E3%82%B3%E3%83%BC%E3%83%89%E3%83%9A%E3%83%BC%E3%82%B8932
の下のほうに書かれている。
また、Excelで、CSVファイルを読み込むとき、
サポートされていない、機種依存、環境依存文字を、PHPで
mb_convert_encodingで単純に"SJIS","EUC-JP"で変換すると、
文字化けする(UTF-8はOK)
そこで、SJIS-winとかcp51932とか、送るんだけど、
それについてまとめる。
■お題
以下の文字をUTF-8(BOMなし)で保存する
(ファイル名utf8n.txt)
これを表示する
■SJIS編
【内容】
以下のPHPファイルをSJISで保存する
(ファイル名sjis.php)
<?php $str = file_get_contents("utf8n.txt"); echo mb_convert_encoding($str, "sjis-win","utf-8"); echo mb_convert_encoding($str, "cp932","utf-8"); echo mb_convert_encoding($str, "sjis","utf-8"); ?> |
【結果】
■EUC編
【内容】
以下のPHPファイルをEUCで保存する
(ファイル名euc.php)
|
【結果】
■参考までに
どのようなエンコードがサポートされているかは、
サポートされる文字エンコーディング
http://php.net/manual/ja/mbstring.supported-encodings.php
に書かれている。
また、上記のCPの番号とコードの関係は
Microsoftコードページ932
https://ja.wikipedia.org/wiki/Microsoft%E3%82%B3%E3%83%BC%E3%83%89%E3%83%9A%E3%83%BC%E3%82%B8932
の下のほうに書かれている。
また、Excelで、CSVファイルを読み込むとき、