如何读取csv文件的输出并在php中打印输出

时间:2012-12-06 19:40:04

标签: php csv

我正在尝试使用PHP读取CSV文件。我想为每一行使用while语句,并希望为每列分配一个变量。我为每列分配变量的原因是我可以在sql查询中使用这些变量。

$csv = fopen('sample2.csv','r') or die("can't open file");
while($csv_line = fgetcsv($csv,1024)) {
    //Not sure what to do here
}
fclose($csv) or die("can't close file");

我了解如何打开文件并阅读整行,但不了解如何控制各列。

更新代码

<?php
    $csv = fopen('sample.csv','r') or die("can't open file");
    while($csv_line = fgetcsv($csv,1024)) {
        list($column1, $column2, $column3) = $csv_line;
        echo 'Column 1: '.$column1.'<br />';
        echo 'Column 2: '.$column2.'<br />';
        echo 'Column 1: '.$column1.'<br />';
        echo 'Column 3: '.$column3.'<br />';
    }
    fclose($csv) or die("can't close file");
?>

4 个答案:

答案 0 :(得分:4)

fgetcsv返回一个包含每个字段的数组。您可以使用list函数获取该数组中的所有列:

while($csv_line = fgetcsv($csv,1024)) {
    list($column1, $column2, $column3) = $csv_line;
}

答案 1 :(得分:0)

如果您执行了print_r($csv_line),您将看到您正在获取一个数组,并按照每个字段进行拆分。

答案 2 :(得分:0)

$ csv = fopen('sample2.csv','r')或死(“无法打开文件”); while($ csv_line = fgetcsv($ csv,1024)){     $ column0 = $ csv_line [0];     $ column2 = $ csv_line [0];     $ column3 = $ csv_line [0];     $ column4 = $ csv_line [0];     $ column = $ csv_line [];

} fclose($ csv)或死(“无法关闭文件”);

答案 3 :(得分:0)

您可以使用csv reader类并简单地将csv文件数据解析为数组格式。

http://www.mbyte.in/csv-reader/

&#13;
&#13;
<?php 
error_reporting(E_ALL | E_STRICT);
ini_set('display_errors', 1);
include "csv_reader.php";
$csvObject=new Mbyte_Csv();
$file='seed.csv';
$data=$csvObject->getData($file);
echo "<pre>";
print_r($data);
echo "</pre>";
?>
&#13;
&#13;
&#13;