我有一个这样的字符串:
红黄蓝
我希望得到一个这样的数组:
阵列( [0] =>红色 [1] =>黄色蓝色)
如何分割字符串中的第一个空格? 我的代码不起作用
<?php
$str = "red yellow blue";
$preg = preg_split("/^\s+/", $str);
print_r($preg);
?>
请帮帮我。
答案 0 :(得分:69)
使用explode
限制:
$array = explode(' ', $string, 2);
只是旁注:preg_split
的第3个参数与explode
的参数相同,因此您也可以像这样编写代码:
$array = preg_split('#\s+#', $string, 2);
参考文献:
答案 1 :(得分:5)
<?php
$string = "red yellow blue";
$result = explode(" ", $string, 2);
print_r($result);
?>
爆炸吧
答案 2 :(得分:3)
答案 3 :(得分:2)
您可以使用explode,但如果您不是100%确定每次都会使用相同的#空格(爆炸),则可以使用ltrim删除第一个单词,空间
<?php
$full='John Doe Jr.';
$full1=explode(' ', $full);
$first=$full1[0];
$rest=ltrim($full, $first.' ');
echo "$first + $rest";
?>
答案 4 :(得分:-2)
function splitName($name) { $parts = expand(' ', $name); 返回数组( '名字' => array_shift($parts), 'lastname' => join(' ', $parts) ); }
答案 5 :(得分:-4)
您可以这样使用explode:
$stringText = "red yellow blue";
$colours = explode(" ", $stringText);
echo $colours[0]; //red
echo $colours[1]; //yellow
echo $colours[2]; //blue
您还可以通过foreach循环获取$ colors的所有元素,但在这种情况下,爆炸更好