2016-03-24 4 views
0

i für die anderen Antworten gesucht, aber sie waren alle MySQL basiert oder über komplizierte ..echo aktuelle Zeilennummer csv php

mein Skript funktioniert gut, aber ich würde die Zeilennummer mit dem foreach Abschnitt aussehen Echo, wo ich Ergebnisse echo (wo iam dies ist, um schließlich die Zeilennummer zu finden, so kann ich eine Zeile löschen Zeile/Zeile Befehl hinzufügen);

function ImportCSV2Array($filename) 
{ 
$row = 0; 
$col = 0; 

$handle = @fopen($filename, "r"); 
if ($handle) 
{ 
    while (($row = fgetcsv($handle, 4096)) !== false) 
    { 
     if (empty($fields)) 
     { 
      $fields = $row; 
      continue; 
     } 

     foreach ($row as $k=>$value) 
     { 
      $results[$col][$fields[$k]] = $value; 
     } 
     $col++; 
     unset($row); 
    } 
    if (!feof($handle)) 
    { 
     echo "Error: unexpected fgets() failn"; 
    } 
    fclose($handle); 
} 

return $results; 

}

$filename = "file.csv"; 
$csvArray = ImportCSV2Array($filename); 

foreach ($csvArray as $row) 
{ 

echo " From: <input type=text name=from value='".$row['from']."'>"; 
echo "To: <input type=text name=to value='".$row['to']."'>"; 
echo whatwouldiput-here for line number?; 

} 
+0

i echo $ row versucht; und es gedruckte Array – DOMDocumentVideoSource

+0

ja, ein Array von Spalten für diese Zeile, was bekommen Sie, wenn Sie 'var_dump ($ Zeile)' – smerny

+0

es Dumps die gesamte Zeile ... danke – DOMDocumentVideoSource

Antwort

0

einen Index zu halten, können Sie einfach tun:

$i = 1; 
foreach ($csvArray as $row) 
{ 
    echo " From: <input type=text name=from value='".$row['from']."'>"; 
    echo "To: <input type=text name=to value='".$row['to']."'>"; 
    echo "Line number: ".$i; 
    $i++; 
} 
+0

danke, wenn ich diese Zeile aus der Datei löschen wollte, wie würde ich das tun? Danke! – DOMDocumentVideoSource

+0

http://stackoverflow.com/questions/4072015/remove-line-from-csv-file – smerny