2017-05-09 18 views
0

私はこの最初の行をスキップするreadCSV関数を持っていますが、3行目をスキップする必要があります。PHPでCSVの3行目をスキップ

これを達成するための好ましい方法は何ですか?

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'; 
+0

あなたは '3回あなたのループの前に'のfgets($ file_handle)を呼び出すことができます。 –

+1

ループ内で処理されるカウントラインのカウンタを保持し、カウンタが3より大きい場合にのみ動作します。 – coderodour

+0

右@coderodour –

答えて

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; 
} 
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'; 
関連する問題