【发布时间】:2013-03-16 00:55:08
【问题描述】:
如果我有一个字符串$myString = "apple, banana, cherry"
我想把这些数据放到一个数组中,那么我有两个选择。
$myArray = explode(", ", $myString)
或
$myArray = str_getcsv($myString)
两者都给出相同的结果。
谁能解释使用其中一种方法相对于另一种方法的优缺点?
我听说 str_getcsv 更好,根据 php 手册“因为 explode() 不会正确处理字符串的可能封闭部分或转义字符。”
谁能通过一个简单的例子解释一下这是什么意思?
谢谢
【问题讨论】:
-
使用更容易理解的版本。对我来说它爆炸了。
-
例如,csv 可能包含一个包含逗号的值,但为了不将逗号解析为字段分隔符,它用引号封装,以表示字符串。例如 1,string,"my string,with a comma",test。包含 4 个字段而不是 5 个