[PHP-users 13005] Re: fgetcsv()について

Moriyoshi Koizumi php-users@php.gr.jp
Wed, 05 Feb 2003 00:02:49 +0900


小泉です。

> Array
> (
>     [00000] => 璽織戞璽好▲?札校?縫┘蕁爾??犬靴泙靴
>     [00100] => 璽蕎霾鶸浜?董璽屮襪悗離▲?札校?縫┘蕁爾??犬靴泙靴
>     [00101] => 璽蕎霾鶸浜?董璽屮襪瞭匹濆?濟?縫┘蕁爾??犬靴泙靴
>     [00102] => 璽蕎霾鶸浜?董璽屮襪旅洪兄?縫┘蕁爾??犬靴泙靴
>     [00103] => 璽蕎霾鶸浜?董璽屮襪悗離如璽秦淨??縫┘蕁爾??犬靴泙靴

なにか文字コードの変換が行われているようですが。("?" の部分はその変換に
失敗した部分のような気がしますので。)
mbstring の設定は EUC-JP => Shift_JIS かなにかになっているのでしょうか?

ともかく、先頭の文字が

00000 => デ
00100 => ユ
00100 => ユ
00100 => ユ
00100 => ユ

なのに 結果では "璽" となっているということは、GR領域に含まれる不要なゴ
ミバイトが先頭に付加しているか、文字が削られているような気がしましたので、

<?php
$bakebake = "璽織戞璽好";
print substr($bakebake, 1);
?>

としてみると、"タベース" と表示されますね。signed / unsigned にまつわる 
fgetcsv() のバグである可能性が高いです。

> ファイルそのものは小泉さん個人宛に送った方がよろしいのでしょうか?

とりあえず以上の情報で十分です。私一人で問題解決するのはもったいないです
から。