Andreas Dölling: fgetcsv

Beitrag lesen

Hallo,

Du willst vermutlich verhindern, daß ein String, der das Semikolon als grammatisches Zeichen im Inhalt verwendet, an diesem Semikolon aufgetrennt wird, oder?
Also z.B.:
"bla";"blubb";"Ein ganzer Satz; mit Semikolon."

Hier soll das dritte Textfeld eben intakt bleiben, richtig?

Leider erwartet fgetcvs() als dritten Parameter genau ein Zeichen und keinen regulären Ausdruck.
Meine erste Idee wäre jetzt, das Einlesen der CSV-Daten in zwei Schritte aufzuteilen.
Schritt 1: mit file() erst einmal zeilenweise die Datensätze aus der Datei auslesen
Schritt 2: den so erhaltenen Array durchlaufen und jeden Datensatz mit preg_split("/;\S/", $data); auftrennen.

Das ist jetzt ganz schnell runtergetippt. Bitte also noch mal bei www.php.net in die Doku schauen wegen file() und preg_split().

Hoffe, das hilft Dir weiter.

Ciao,
Andreas