爆炸一个字

时间:2014-03-03 09:00:22

标签: php explode

我有The Oak TreeThe Pine

等标题

我设置了$stylename = explode("The", $row->title);

这应该将短语分解为

$stylename[0] = 'The'; $stylename[1] = 'Oak Tree';

$stylename[0]为空。

如何更改上述代码以导出我需要的内容?

由于

5 个答案:

答案 0 :(得分:3)

爆炸分裂你给它的字符串,所以你有“”(没有)然后是“The”(这就是它分裂的那样)然后(其余部分),当你用b爆炸时更简单地说是“abc”产生两个字符串“a”和“c”。

使用preg_split代替一个简单的正则表达式,或者人为地添加“the”,Regex更好,因为你可以使它不区分大小写,你可能想要(标题中的“the”应该有一个小写“t” )

答案 1 :(得分:1)

使用preg_split

// split on the spaces which has `The` in front of it.
$stylename = preg_split('/(?<=The)\s+/', $row->title);

答案 2 :(得分:0)

explode(" ", $row->title, 1)应该按照您想要的方式进行。

1是应该分割给定字符串的次数的限制。

请参阅http://php.net/explode

答案 3 :(得分:0)

尝试

$stylename = explode(" ", "The Oak tree");
$result[0] = $stylename[0];
unset($stylename[0]);
$result[1] = implode(" ",$stylename);
unset($stylename);

参见演示here

答案 4 :(得分:0)

这样做

$stylename = explode(" ", trim($row->title),1);

这应该有效