続々 PHP CSV出力 (nkf 使用)
やっと解決したと思ったら、今度は機種依存文字の
丸囲みの1が文字化けするとクレームが・・・
mb_convert_encoding($value,'SJIS','UTF-8');
?に変換されてしまう。
iconv("utf-8","sjis",$value);
機種依存文字以降の文字が消えてしまう。
・・・やっぱりnkfに頼るしかないか。
ということで、phpからnkfを使用する方法を調べていると
コチラの方が実践されていました。
http://djlab.sakura.ne.jp/mydiary/?p=130
参考にさせていただき、
//UTF-8からSJISへ変換
function u2s($value){
$nkfpath = "/usr/bin/nkf";
$str = '"'.mb_ereg_replace("\"", '\"', $value).'"';
$command = popen("echo -n $str | $nkfpath -s","r");
$result = "";
while (!feof($command)) {
$result .= fgets($command);
}
pclose($command);
return $result;
}
という関数を使用することで回避できました。
もどる