On this page
str_getcsv
(PHP 5 >= 5.3.0, PHP 7, PHP 8)
str_getcsv — Parse a CSV string into an array
Description
str_getcsv(
string $string,
string $separator = ",",
string $enclosure = "\"",
string $escape = "\\"
): array
Parses a string input for fields in CSV format and returns an array containing the fields read.
Note:
The locale settings are taken into account by this function. If
LC_CTYPEis e.g.en_US.UTF-8, strings in one-byte encodings may be read wrongly by this function.
Parameters
string-
The string to parse.
separator-
Set the field delimiter (one single-byte character only).
enclosure-
Set the field enclosure character (one single-byte character only).
escape-
Set the escape character (at most one single-byte character). Defaults as a backslash (
\) An empty string ("") disables the proprietary escape mechanism.Note: Usually an
enclosurecharacter is escaped inside a field by doubling it; however, theescapecharacter can be used as an alternative. So for the default parameter values""and\"have the same meaning. Other than allowing to escape theenclosurecharacter theescapecharacter has no special meaning; it isn't even meant to escape itself.
Return Values
Returns an indexed array containing the fields read.
Changelog
| Version | Description |
|---|---|
| 7.4.0 | The escape parameter now interprets an empty string as signal to disable the proprietary escape mechanism. Formerly, an empty string was treated like the default parameter value. |
Examples
Example #1 str_getcsv() example
<?php
$string = 'PHP,Java,Python,Kotlin,Swift';
$data = str_getcsv($string);
var_dump($data);
?>
The above example will output:
array(5) {
[0]=>
string(3) "PHP"
[1]=>
string(4) "Java"
[2]=>
string(6) "Python"
[3]=>
string(6) "Kotlin"
[4]=>
string(5) "Swift"
}
Example #2 str_getcsv() example with an empty string
On an empty string this function returns the value [null] instead of an empty array.
<?php
$string = '';
$data = str_getcsv($string);
var_dump($data);
?>
The above example will output:
array(1) {
[0]=>
NULL
}
See Also
- fgetcsv() - Gets line from file pointer and parse for CSV fields
© 1997–2023 The PHP Documentation Group
Licensed under the Creative Commons Attribution License v3.0 or later.
https://www.php.net/manual/en/function.str-getcsv.php