CSV Datei mit PHP auslesen
Seit PHP 5.1 gibt es die Möglichkeit Dateioperationen nicht mehr mit Funktionen auszuführen sondern [SPLFileObject](http://de.php.net/manual/de/class.splfileobject.php) oder [SPLFileInfo](http://de.php.net/manual/de/class.splfileinfo.php) zu verwenden. In PHP 5.2 kam auch noch die Unterstützung für CSV Dateien dazu und so kann man ziemlich elegant mit [CSV Dateien](http://de.wikipedia.org/wiki/CSV_(Dateiformat)) umgehen. Das folgende Beispiel illustriert das hoffentlich: Die positiven Dinge sind auf jeden Fall die schöne objektorientierte API und die wenigen Zeilen Code die einem erlauben über den Inhalt der CSV Datei zu iterieren und zwar ohne die gesamte Datei im Speicher zu behalten! ### Das Zeilenende als Stolperstein Ein kleiner Stolperstein stellt allerdings die unterschiedlichen Zeilenenden dar die von manchen Programmen bei dem Erstellen einer CSV Datei verwendet werden. So kam es beim Testen schon vor, dass eine CSV Datei mit einem Carriage Return (chr 13) am Ende erzeugt wurde, statt dem gewohntem Line Feed (chr 10) oder einer Kombination aus beidem. Das Problem dabei ist, dass PHP dann die Zeilenenden nicht richtig erkennt und alle Daten in der ersten Zeile stecken. Dies kann man aber beheben indem darauf achtet, dass man `auto_detect_line_endings` in der `php.ini` aktiviert hat oder es einfach selbst setzt.















