读取第一行不包括的CSV文件

时间:2016-08-23 08:10:36

标签: php csv

  

CSV格式

"Type","Stock","VIN","Year"
"Used","5262G","1G1YY12S435101008","2003"
"Used","5539G","YV4902DZ2D2439476","2013"
"Used","15460","YV4612HK3F1000423","2015"
  

获取TYPE,STOCK,VIN,YEAR

的代码
$file = fopen("files/stillmanmvolvo.csv", "r");
echo "</br></br>";

while(! feof($file))
{
    $file_data = fgetcsv($file);

    $type                   = $file_data[0];
    $stock                  = $file_data[1];
    $vin                    = $file_data[2];
    $year                   = $file_data[3];

    echo $type .' '. $stock .' '. $vin .' '. $year . '<br><br>';
}
fclose($file);
  

输出

Type Stock VIN Year

Used 5262G 1G1YY12S435101008 2003

Used 5539G YV4902DZ2D2439476 2013

Used 15460 YV4612HK3F1000423 2015

使用上面的代码我得到了数据,但数据包含第一个ROW"Type","Stock","VIN","Year"请参见输出中的第一行) 我想exclude第一行,我的代码需要做哪些更改才能排除第一行...?

谢谢

4 个答案:

答案 0 :(得分:1)

试试这个,

$file_data = fgetcsv($file);// now the file pointer is on second row
while(! feof($file))
{    
    $file_data = fgetcsv($file);
    $type                   = $file_data[0];
    $stock                  = $file_data[1];
    $vin                    = $file_data[2];
    $year                   = $file_data[3];
    echo $type .' '. $stock .' '. $vin .' '. $year . '<br><br>';
}

答案 1 :(得分:1)

只需在fgets($file)之后fopen()循环

之前致电while
$file = fopen("files/stillmanmvolvo.csv", "r");
fgets($file)
echo "</br></br>";

while(! feof($file))
{
    $file_data = fgetcsv($file);

    $type                   = $file_data[0];
    $stock                  = $file_data[1];
    $vin                    = $file_data[2];
    $year                   = $file_data[3];

    echo $type .' '. $stock .' '. $vin .' '. $year . '<br><br>';
}
fclose($file);

fgets() docs

答案 2 :(得分:1)

尝试将行读入空白区域以跳过它:

$file = fopen("files/stillmanmvolvo.csv", "r");
echo "</br></br>";

// read first line
if(!feof($file)) { fgetcsv($file); }

// continue reading the rest of the file
while(! feof($file))
{
    $file_data = fgetcsv($file);

    $type                   = $file_data[0];
    $stock                  = $file_data[1];
    $vin                    = $file_data[2];
    $year                   = $file_data[3];

    echo $type .' '. $stock .' '. $vin .' '. $year . '<br><br>';
}
fclose($file);

答案 3 :(得分:0)

试试这个:

$file = fopen("files/stillmanmvolvo.csv", "r");
$first = false;
echo "</br></br>";

while(! feof($file))
{
    $file_data = fgetcsv($file);
    if (!$first) {
        $first = true;
        continue;
    }

    $type                   = $file_data[0];
    $stock                  = $file_data[1];
    $vin                    = $file_data[2];
    $year                   = $file_data[3];

    echo $type .' '. $stock .' '. $vin .' '. $year . '<br><br>';
}
fclose($file);