在PHP中从csv列创建数组

时间:2014-09-10 15:05:14

标签: php arrays csv collections web-deployment

之前我从未使用过csv文件,我希望从列中创建php中的数组。

因此,例如csv看起来像这样:

姓名,地址,DOB

john doe,22 grove street,06,06,2006

我希望每个列都是列标题命名的数组。每当我解析文件(test.csv)时,我都会获得表行的数组。

1 个答案:

答案 0 :(得分:1)

以下代码将为您完成工作。你可以在这个网址上看到确切代码的真实工作脚本:

http://sugunan.net/demo/csv1.php

$i=0;
$filename = 'data1.csv';
$contents = file($filename);



foreach($contents as $line) {
    $line = preg_replace( "/\r|\n/", "", $line );
    $line_array = explode(",",$line);
    if($i==0)
    {
        foreach($line_array as $key=>$val)
        {
            $csv_heading[$key] = trim($val);
        }
    }
    else
    {
        foreach($line_array as $key=>$val)
        {
            $csv_array[$i][$csv_heading[$key]] = $val;
        }
    }
    $i++;
}

print_r($csv_array);

数据文件网址:http://sugunan.net/demo/data1.csv