如果逗号是文本值,如何用逗号分割数组中的文本

时间:2016-09-09 05:47:12

标签: php

PHP

$ str =' 0,"一些,文字",0.23,4';

如果分隔符(,)可能是值的一部分,如何将文本拆分为数组?

感谢。

3 个答案:

答案 0 :(得分:1)

如果你使用explode,那么第一个印象是你确实会得到5个值而不是4个。

您最好的选择是使用str_getcsvlink)。检查this thread

答案 1 :(得分:1)

试试这个

$str = '0, "Some, text", 0.23, 4';
$new = str_getcsv($str, ",","",",");
echo "<pre>";
print_r($new);

输出

Array
(
    [0] => 0
    [1] => Some, text
    [2] => 0.23
    [3] => 4
)

有关str_getcsv的详情,请参阅http://php.net/manual/en/function.str-getcsv.php

答案 2 :(得分:0)

最简单的方法是使用explode:

$text = "Some, Text";

$parts = explode(", ", $text);
$var1 = array_pop($parts);
$var2 = implode(" ", $parts);

echo "str1: $var1\n";
echo "str2: $var2\n";

将返回“str1:Text str2:Some”