我正在尝试这个简单的CSV文件:
A;23
B;24
C;25
D;26
E;123
F;243
G;180
H;55
I;243
含义是获取具有第一列的所有值的数组。代码如下:
<?php
function importData($file, $store_id) {
$handle = fopen($file, "r");
while ($row = fgetcsv($handle, 0, ";")) {
$productIds = array($row[1]);
var_dump($productIds);
exit;
}
fclose($handle);
}
importData("/home/test.csv", 3);
?>
转储$row[0]
的信息时,我得到以下信息:
array(1) {
[0]=>
string(1) "A"
}
意思是将所有值从A到I,不仅是第一个。对该代码有什么要求?
感谢您的合作
答案 0 :(得分:0)
您每次都覆盖阵列。而是先初始化一次数组,然后使用array_push()
或square bracket syntax添加元素:
function importData($file, $store_id) {
$productIds = array();
$handle = fopen($file, "r");
while ($row = fgetcsv($handle, 0, ";")) {
// Append the value onto the array
$productIds[] = $row[1];
}
fclose($handle);
return $productIds;
}
$productIds = importData("/home/test.csv", 3);