[PHP-dev 1205] PHP5のfgetcsv()関数について
Masanori Kobayashi
markun @ leo.bekkoame.ne.jp
2005年 11月 19日 (土) 01:32:26 JST
小林といいます。
PHP4の環境からPHP5への移行作業をしています。
CSVファイルを取り込んで表示するプログラムを移行したのですが、このとき、
PHP5のfgetcsv()関数は、""で括られている項目内に改行コードが含まれている
CSVファイルを正しく読み込めません。改行コード単位でしかレコードのハンド
リングが出来ていないようです。同じファイルをPHP4のfgetcsv()関数は正しく
読み込むことが出来ます。
ざっと、bugs.php.netを見たのですが、当てはまるものが無いようでしたが、既
に登録されているバグであったらすいません。
-------------------
csvファイルの例
test.csv
-------------------
1,2,20051101,"あいうえおかきくけこ
さしすせそ
たちつてとなにぬねの",200,2005-11-01
-------------------
$a = fgetcsv("test.csv");
これをPHP5.0.5で実行すると・・・
$a[0] : 1
$a[1] : 2
$a[2] : あいうえおかきくけこ
となり、PHP4.3.11で実行すると、
$a[0] : 1
$a[1] : 2
$a[2] : あいうえおかきくけこ\n\nさしすせそ\nたちつてとなにぬねの
$a[3] : 200
$a[4] : 2005-11-01
(便宜的に改行は\nで表示)
--
_/_/ Masanori Kobayashi
PHP-dev メーリングリストの案内