在php中读取csv文件的前5个字段

时间:2009-12-10 11:26:58

标签: php

我对如何在php(只有前4个字段)中读取csv文件感到困惑,并排除剩余的文件。

Sno,Name,Ph,Add,PO
1,Bob,0102,Suit22,89
2,Pop,2343,Room2,78

我只想读取前3个文件并跳转到下一个数据。无法弄清楚如何通过fgetcsv

任何帮助?

谢谢,

2 个答案:

答案 0 :(得分:3)

我为您添加了对示例fgetcsv代码的注释:

$row = 1;
if (($handle = fopen("test.csv", "r")) !== FALSE) {
    while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) {
        $num = count($data);
        echo "<p> $num fields in line $row: <br /></p>\n";
        // iterate over each column here
        for ($c=0; $c < $num; $c++) {
            // handle column data here
            echo $data[$c] . "<br />\n";
            // exit the loop after 3rd column parsed
            if ($c == 2) break;
        }
        ++$row;
    }
    fclose($handle);
}

答案 1 :(得分:1)

这是一种没有fgetcsv功能的方法:

$lines = file('data.csv');
$linecount = count($lines);
for ($i = 1; $i < $linecount; $i++){
   $fields = explode(',', $lines[$i]);
   $sno  = $fields[0];
   $name = $fields[1];
   $ph   = $fields[2];
   $add  = $fields[3];
}