(PHP 5 >= 5.3.0, PHP 7, PHP 8)
str_getcsv — Parst einen CSV-String in ein Array
$string,$separator = ",",$enclosure = "\"",$escape = "\\"Parst eine Zeichenketten-Eingabe für Felder im CSV-Format und gibt ein Array mit den gelesenen Feldern zurück.
Hinweis:
Diese Funktion berücksichtigt die Locale-Einstellungen. Ist
LC_CTYPEbeispielsweisede_DE.UTF-8, werden Zeichenketten in Ein-Byte-Kodierungen von dieser Funktion möglicherweise falsch geparst.
stringDie zu parsende Zeichenkette.
separatorBestimmt das Feldtrennzeichen (nur ein Ein-Byte-Zeichen).
enclosureBestimmt das Textmarkierungszeichen (nur ein Ein-Byte-Zeichen).
escape
Bestimmt das Maskierungszeichen (höchstens ein Ein-Byte-Zeichen).
Standardmäßig wird ein Backslash (\) verwendet. Eine
leere Zeichenkette ("") deaktiviert den proprietären
Maskierungsmechanismus.
Hinweis: Normalerweise wird ein
enclosure-Zeichen innerhalb eines Feldes maskiert, indem es verdoppelt wird; allerdings kann dasescape-Zeichen als Alternative verwendet werden. Also haben für die Standard-Parameterwerte""und\"dieselbe Bedeutung. Außer der möglichen Maskierung desenclosure-Zeichens hat dasescape-Zeichen keine besondere Bedeutung; es kann nicht einmal verwendet werden, um sich selbst zu maskieren.
Gibt ein indexiertes Array zurück, das die eingelesenen Felder enthält.
| Version | Beschreibung |
|---|---|
| 7.4.0 |
Der Parameter escape interpretiert nun eine leere
Zeichenkette als Signal, um den proprietären Maskierungsmechanismus zu
deaktivieren. Zuvor wurde eine leere Zeichenkette wie der Vorgabewert
behandelt.
|
Beispiel #1 str_getcsv()-Beispiel
<?php
$string = 'PHP,Java,Python,Kotlin,Swift';
$data = str_getcsv($string);
var_dump($data);
?>Das oben gezeigte Beispiel erzeugt folgende Ausgabe:
array(5) {
[0]=>
string(3) "PHP"
[1]=>
string(4) "Java"
[2]=>
string(6) "Python"
[3]=>
string(6) "Kotlin"
[4]=>
string(5) "Swift"
}
Beispiel #2 str_getcsv()-Beispiel mit einer leeren Zeichenkette
Bei einer leeren Zeichenkette gibt diese Funktion den Wert
[null] anstelle eines leeren Arrays zurück.
<?php
$string = '';
$data = str_getcsv($string);
var_dump($data);
?>Das oben gezeigte Beispiel erzeugt folgende Ausgabe:
array(1) {
[0]=>
NULL
}