[PHP-users 10597] Re: fgetcsv の仕様について

WADA Masashi php-users@php.gr.jp
Mon, 07 Oct 2002 11:32:20 +0900


 和田です。

Susumu_Abe GDs.net wrote:
>// テストデータ
>  "[01*01]","[01*02]","[01*03]"
>  '[02*01]','[02*02]','[02*03]'
>  "[03*01]",'[03*02]',"[03*03]",
 ↑↑

 各行頭に全角のスペースが二つ入っていますが、これが原因では?
試しにこのデータをCSVファイルとしてExcelに読込ませると、セルの中
にダブルクォーテーションが出てきます。
 CSVファイルの厳密な仕様を調べたことはありませんが、各データをダ
ブルクォーテーションで囲むなら、データの先頭にダブルクォーテーショ
ンがないと無視されてしまうのではないでしょうか?

>// 出力結果
>3 fields in line 1:
>?"[01*01]"   <---
>[01*02]
>[01*03]
>3 fields in line 2:
>'[02*01]'
>'[02*02]'
>'[02*03]'
>4 fields in line 3:
>[03*01]
>'[03*02]'
>[03*03]
>
>
>ダブルクォーテーションの取り扱いについて、 最初の1件目のみ
>データとして扱われ、以後データ区切り文字列とはみなされているように
>見受けます。

 だとすると、3行めもダブルクォーテーションが残るはずなんですけど・・・。

----
和田雅志 (WADA Masashi)
wada@hh.iij4u.or.jp