PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : CSV Datei auslesen



Thunderstorm
02.08.2010, 16:34
Also ich habe eine kleine aufgabe bekommen.
Eine CSV datei auslesen und wieder geben.
Ich habe eine CSV Datei erstellt mit ein paar Datensätzen und wollte sie dann per fgetcsv auslesen aber irgend wie bekomme ich immer nur die erste Reihe ausgegeben woran kann das liegen ?

hir der Code:

<?php
$handle = fopen("test.csv","r");
$data=fgetcsv($handle, 100000, ",");
echo $num = count($data);
foreach ($data as $value) {
echo $value."<br>";
}
fclose($handle);
?>

Hu5eL
02.08.2010, 16:36
machs doch einfach mit get_file_contents() wieso denn so schwer, wenns auch einfach geht?
PHP: file_get_contents - Manual (http://php.net/manual/de/function.file-get-contents.php)

Thunderstorm
02.08.2010, 16:45
Mhh okay das gibt die Datei zwar wieder.
Aber das ist ja nicht der eig nutzen der CSV Datei.
Ich wollte eig die einzelen Einträge später in eine SQL Tabelle speichern.

GregorSamsa
02.08.2010, 17:00
"fgetcsv — Gets line from file pointer and parse for CSV fields" <-- Das sagt alles, oder?


if(!($fp = fopen('file', 'r')) return 0;
while($data = fgetcsv($fp)) print_r($data);
fclose($fp);

cpt. crunch
05.08.2010, 20:26
Gibt einige hilfreiche Klassen die das Auslesen und Arbeiten mit CSV vereinfachen. :D

Schau mal hier:
csv - PHP Classes (http://www.phpclasses.org/search.html?words=csv&x=0&y=0&go_search=1)

AlterHacker
05.08.2010, 20:31
$data = file("input.csv");
foreach($data as $line){
$daten = explode(",",$line);
print_r($daten);
}
So in etwa würd ichs machen ;)