如何在PHP中分隔单词?

时间:2011-09-02 08:33:37

标签: php

如何在php中分隔单词? 例子i有一个变量str =“a1,c1,d1; a2,c2,d2; a3,c3,d3”; 我想将str分成以下格式: tt1 = a1,c1,d1,tt2 = a2,c2,d2,tt3 = a3,c3,d3 在php中如何做到这一点?

尝试这个但不正确:

        $str = "a1,c1,d1;a2,c2,d2;a3,c3,d3";
    $strSplit = explode(';', $str);
    $final = array();    

    for($i=0, $j=0; $i<count($strSplit); $i++, $j++)
    {
        $final[$j] = $strSplit[$i] . ' ' . $strSplit[$i+1];
    }

3 个答案:

答案 0 :(得分:2)

简单地

$str = "a1,c1,d1;a2,c2,d2;a3,c3,d3";
$arr = explode(';',$str);
var_dump($arr);

...不给你你想要的东西??

或者您是否希望将这些部件作为变量,从'tt'开始?

$str = "a1,c1,d1;a2,c2,d2;a3,c3,d3";
$arr = explode(';',$str);
for ($i = 0; isset($arr[$i]); $i++) ${'tt'.($i + 1)} = $arr[$i];
print "tt1=$tt1 tt2=$tt2 tt3=$tt3"

或者可能是一个数组数组?

$str = "a1,c1,d1;a2,c2,d2;a3,c3,d3";
$arr = explode(';',$str);
for ($i = 0; isset($arr[$i]); $i++) $arr[$i] = explode(',',$arr[$i]);
var_dump($arr);

或者您想用空格替换分号(;)字符吗?

$str = "a1,c1,d1;a2,c2,d2;a3,c3,d3";
$out = str_replace(';',' ',$str);
print $out;

答案 1 :(得分:1)

$str = "a1,c1,d1;a2,c2,d2;a3,c3,d3";
$tt = explode(";", $str); //your answers: $tt[0], $tt[1] and $tt[2]

如果你想再次加入他们之间的空格,你可以尝试:

$final = implode(" ", $tt);

答案 2 :(得分:0)

你可以使用php函数strtok:

http://php.net/manual/en/function.strtok.php

并使用分号作为标记:

$array = strtok($string, ';');

这将创建一个数组,每个条目将成为原始字符串的一部分,直到分号