[PHP-dev 868]fgetcsvてゆーか、ファイル入出力の、5cの罠
Tomoyuki Asakawa
tom @ asakawa.ne.jp
2003年 8月 26日 (火) 15:42:18 JST
あさかわです。
PHP-4.3.3RC4で
fgetcsvに、内部コードがSJISのファイルを、食わせた場合。
"機能",
なんてデータがあると
本来は、「機能」だけが、抽出されるべきところ
能の、2バイト目が、5chなので、エスケープされて
機能",までが、データとして読み込まれてしまいます。
これは、fgetcsvが、SJIS->EUC変換してくれれば問題ないのですが
そうなってないだけではなく
そもそも、csvは、MS-BASICのINPUT文の書式からの派生なので
(若い人はしらないとおもうけど)
""の中を、¥で、エスケープするなんて概念(仕様)はないのです。
#というか、¥1000とか(もち半角で)かけなくなってしまう。
ということで、fgetcsvの仕様がおかしいと思うのですが
#PHP4。2あたりでは大丈夫だった来もするんですが。
みなさまどう思われますか?
PHP-dev メーリングリストの案内