在csv文件中获取$ row的所有值

时间:2018-07-29 15:52:45

标签: php arrays csv

我正在尝试这个简单的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,不仅是第一个。对该代码有什么要求?

感谢您的合作

1 个答案:

答案 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);