[PHP-users 25888] Re: 連続ダブルコーテーションの置き換え

ISIGE, Akira xia @ silvia.com
2005年 6月 23日 (木) 12:49:27 JST


いしげ です.

> 地道にfgetsで行単位に読み込み、explodeでバラスという古典的な方法で障害
> は回避できました。参考までに。

そもそもの質問をされた方の前提が Excel の CSV データを扱うことだったと思いま
すが,
fgets でも fgetcsv でも同様ですが,
Excel が作るマルチラインデータはハンドリングできませんね.

1セルに改行を入れると,Excel は改行コード自体を特にエスケープせず,
データ自体を "" で囲うことで表現します.
よって,行志向では Excel データを完全に取り扱うことはできないと思います.
(前提としてマルチラインを無視できるのであれば問題ありません)

そんなわけで,fgetcsv() ではなく PEAR の File_CSV を利用するのがよいかと思い
ます.
……が,自分はこれを使ったことがないのでどんな問題が出るかわかりません.
もしこれを利用されたなら,どんな感じだったかレポートしていただけると
非常にありがたく思います :-)


-- 
ISIGE, Akira



PHP-users メーリングリストの案内