2017-11-20 38 views
0

fgets을 사용하여 CSV 파일에서 데이터를 읽으려고합니다. 그러나 처음 두 개의 맨 위 행을 전달하고 싶습니다.첫 번째 두 줄의 csv 파일을 전달하여

기본적으로 fgets은 첫 번째 행 만 전달합니다. 처음 두 개의 맨 위 행을 전달하여이를 조정하려면 어떻게해야합니까?

$myfile = "/home/dibon/AML_Data/test.csv"; 
$myfile = fopen("$myfile", "r") or die("Unable to open file!"); 

fgets($myfile); //First fgets to read over header line. 

while($line=fgets($myfile)){ 
//Explode your line by space delimeter 
$words=explode("|",$line); 

DB::table('transaction_incremental')->insert(
['ReceiptNumber' => "$words[0]", 'InitiatingMSISDN' => "$words[2]"] 
); 

} 
+1

호'는 fgets ($ myfile을)를, '한 번 더 루프 – splash58

+0

splash58 @ 전에, 아니, 그 __too__ 쉽게! –

+0

PHP는 csv 파일 ([fputcsv()] (http://php.net/manual/en/function.fgetcsv.php)을 구문 분석하기위한 내장 함수를 제공합니다. 왜 사용할 수 없습니까? –

답변

0
fgetcsv($handle); // get line 0 and move to next 
fgetcsv($handle); // get line 1 and move to next 
while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) { 
    .... 
}