fgetcsv() でコンマ区切り値ファイルを読み取ろうとしています。通常、これは期待どおりに機能しますが、一部の列が 1 つとして扱われるのではなく、新しいデータ行に分割されているファイルに遭遇しました。
問題を引き起こす行の例を次に示します: 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 />';
}
" " で終わるほぼ完全なデータ行を 1 つ取得しLength/Width/Height: 3.75\"x2.4\""x2.4\"" (95.25X60.96x60.96)
、その後のすべての改行は最後まで独自の行として扱われます。
ここで何が起こっているのか分かりますか?