我应该如何以最短的方式修改代码,以便始终在逗号之前回显第一个字符串,但如果根本没有逗号,那么回显原始字符串?
在以下代码中,对于$string1
,没有任何回应:
$string1 = "aaaaaaa";
echo '1';
echo substr($string1, 0, strpos($string1, ','));
$string2 = "aaaaaaa, bbbbb";
echo '2';
echo substr($string2, 0, strpos($string2, ','));
echo '3';
$string3 = "aaaaaaa, bbbbb, ccccc";
echo substr($string3, 0, strpos($string3, ','));
答案 0 :(得分:3)
explode
将返回整个字符串:
如果分隔符包含一个未包含在字符串中的值并且使用了负限制,则将返回一个空数组,否则将返回包含字符串的数组。
所以这适用于所有情况:
echo explode(',', $str)[0];
答案 1 :(得分:0)
你可以简单地分解字符串并获取第一个元素。
$first_element = explode(',', $string)[0];