1
假设我的csv文件会得到一个二维数组,如何将它们放入$array[][]
?如何从csv数据生成二维数组?
if (($handle = fopen($_SERVER['DOCUMENT_ROOT']."/file.csv", "r")) !== FALSE) {
while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) {
$num = count($data);
for ($c=0; $c < $num; $c++) {
$dtary[$d][$c] = $data[$c];
if ($c == $num) {
$d++;
}
}
}
fclose($handle);
}
var_dump($dtary);
我正在CSV文件的只是最后一排。
感谢代码先生。为什么for循环内的代码不增加?我不明白那一部分。 –
您在循环内有一个“不合逻辑”的情况。 'for'循环的这个部分'$ c <$ num;'告诉循环何时“break”。如果你有'$ c <= $ num;'那么最后的迭代将允许'$ c == $ num'为真。这只是一个例子,你不应该改变条件,因为它会导致其他问题。这对你有意义吗?或者我应该尝试以不同的方式解释? – mickmackusa
我现在得到它谢谢! –