2017-11-20 40 views
0

fgetsを使用してCSVファイルからデータを読み取ろうとしています。しかし、私は最初の2つの最上行を渡したいと思うでしょう。csvファイルの最初の2行を渡して

デフォルトでは、fgetsは最初の行だけを渡します。どのように最初の2つの上の行を渡すことでこれを微調整することができますか?

$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) { 
    .... 
} 
関連する問題