我有一个从CSV文件中读取的脚本,有时它接收的CSV文件包含不均匀的分隔符/列,因此第一行可以有30列,第二行可以有20列,等等。我可以我自己想一些解决方案,即:
计算最宽行中的分隔符,然后将适当的数量附加到每个短行以使它们均匀。
但我想知道是否有人有更优雅的方法来做这件事。
答案 0 :(得分:2)
这取决于您使用什么来阅读最优雅的CSV fgetcsv
请参阅http://www.php.net/manual/en/function.fgetcsv.php了解更多信息
有一个例子可以计算CSV的数量......
$row = 1;
if (($handle = fopen("test.csv", "r")) !== FALSE) {
while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) {
$num = count($data);
echo "<p> $num fields in line $row: <br /></p>\n";
$row++;
for ($c=0; $c < $num; $c++) {
echo $data[$c] . "<br />\n";
}
}
fclose($handle);
}
由于
:)