在PHP中跳过3行第一行CSV

时间:2017-05-09 20:26:14

标签: php csv

我有这个readCSV函数,现在跳过第一行,但是我需要它跳过第三行。

实现这一目标的首选方式是什么?

function readCSV($csvFile){
   $file_handle = fopen($csvFile, 'r');
   while (!feof($file_handle) ) {
     $array = fgetcsv($file_handle, 'r', ';');
     $line_of_text[] = array('dato'=>$array[0],'vs'=>trim($array[1]),'vf'=>trim($array[2]));
   }
   fclose($file_handle);
   return $line_of_text;
 }

$csvFile = 'http://some.file.csv';

2 个答案:

答案 0 :(得分:0)

使用计数器跟踪已处理的许多行:

  function readCSV($csvFile){
   $file_handle = fopen($csvFile, 'r');
   $counter = 0;
   while (!feof($file_handle) ) {
    if($counter < 3){
         $array = fgetcsv($file_handle, 'r', ';');
         $line_of_text[] = array('dato'=>$array[0],'vs'=>trim($array[1]),'vf'=>trim($array[2]));
    }
    $counter++
   }
   fclose($file_handle);
   return $line_of_text;
 }

答案 1 :(得分:0)

保持计数器计数循环内处理的行,只有在计数器大于3时才动作。

示例:

function readCSV($csvFile){

  $counter = 0;

  $file_handle = fopen($csvFile, 'r');

  while (!feof($file_handle) ) {
    if($counter > 3){
      $array = fgetcsv($file_handle, 'r', ';');
      $line_of_text[] = array('dato'=>$array[0],'vs'=>trim($array[1]),'vf'=>trim($array[2]));
    }
    $counter++;
  }

  fclose($file_handle);
  return $line_of_text;
}

$csvFile = 'http://some.file.csv';