当用PHP阅读CSV文件时,CSV文件中的换行符出现问题。如果逗号后面跟着换行符,则一个单元格的内容将被拆分:
$csv = array_map('str_getcsv', file($file));
first,second,"third,
more,text","forth"
next,dataset
这将导致:
1) first | second | third
2) more text | forth
3) next | dataset
虽然它应该导致:
1) first | second | third more text | forth
2) next | dataset
这是str_getcsv中的一个错误吗?
2条答案
按热度按时间ki0zmccv1#
请不要这样做,使用
fgetcsv()
,因为file()
不关心文件中的字符串封装。https://secure.php.net/manual/en/function.fgetcsv.php
如果可以的话,在执行操作之前,尽量不要将所有行存储到一个数组中,这样系统的内存使用率就会提高。
ctehm74n2#