(PHP 5 >= 5.3.0, PHP 7, PHP 8)
str_getcsv — 解析 CSV 字符串为一个数组
$string
,$separator
= ",",$enclosure
= "\"",$escape
= "\\"以 CSV 字段格式解析字符串输入,并返回包含读取字段的数组。
注意:
此函数考虑区域设置。如果
LC_CTYPE
是类似en_US.UTF-8
的值,此函数将错误的读取单字节编码的字符串。
string
待解析的字符串。
separator
设定字段界定符(仅一个单字节字符)。
enclosure
设定字段包裹字符(仅一个单字节字符)。
escape
设置转义字符(最多一个单字节字符)。默认为反斜线(\
)。空字符串(""
)禁用专有转义机制。
注意: Usually an
enclosure
character is escaped inside a field by doubling it; however, theescape
character can be used as an alternative. So for the default parameter values""
and\"
have the same meaning. Other than allowing to escape theenclosure
character theescape
character has no special meaning; it isn't even meant to escape itself.
返回一个包含读取到的字段的索引数组。
版本 | 说明 |
---|---|
7.4.0 |
escape 现在将空字符串视为禁用专有转义机制的信号。以前视为默认参数值。
|
示例 #1 str_getcsv() 示例
<?php
$string = 'PHP,Java,Python,Kotlin,Swift';
$data = str_getcsv($string);
var_dump($data);
?>
以上示例会输出:
array(5) { [0]=> string(3) "PHP" [1]=> string(4) "Java" [2]=> string(6) "Python" [3]=> string(6) "Kotlin" [4]=> string(5) "Swift" }
示例 #2 处理空字符串的 str_getcsv() 示例
对于空字符串,此函数返回值 [null]
从而代替空数组。
<?php
$string = '';
$data = str_getcsv($string);
var_dump($data);
?>
以上示例会输出:
array(1) { [0]=> NULL }