我想讓fgetcsv()讀取一個逗號分隔值文件。通常這會按預期工作,但是我遇到了一個文件,其中一些列被拆分爲新的數據行而不是被視爲一個。fgetcsv在奇數位置拆分列
這裏是一個行給我找麻煩的例子: pastie.org/5664800
是創造該問題的列是一個與多條線路構成的說明。
fgetcsv結束第一讀取,當它到達下面一行:
- Length/Width/Height: 3.75\""x2.4\""x2.4\"" (95.25X60.96x60.96)
因此,舉例來說,如果我有代碼:
ini_set('auto_detect_line_endings', true);
while ($row = fgetcsv($filepointer, 5000, ',', '"') {
echo '<pre>'; var_dump($row); echo '</pre><br />';
}
我得到的數據末端的一個大多完整的行在「Length/Width/Height: 3.75\"x2.4\""x2.4\"" (95.25X60.96x60.96)
」中,然後每個換行符被視爲自己的行一直到結尾。
任何想法這裏發生了什麼?
奇怪。 [適用於我。](http://ideone.com/wlaIGU)什麼是您的PHP版本? –
這很奇怪。它是PHP 5.3.16。 – eComEvo
嗯。它適用於我的電腦上的PHP 5.3.10,以及IDEone的5.2.12。爲了確保,你能否從IDEone下載我的測試腳本並檢查它是否失敗了? –