8

我正在寻找从逗号分隔的字符串in-line中获取第一个值的最快/最短方法。

我能做的最好的就是

$string = 'a,b,c,d';
echo "The first thing is " . end(array_reverse(explode(',', $string))) . ".";

但我觉得这是过度和多余的。有没有更好的办法?

4

5 回答 5

8
list($first) = explode(',', 'a,b,c,d');
var_dump($first);  // a

可能有效:)


在 PHP 6.0 中,您将能够简单地:

$first = explode(',', 'a,b,c,d')[0];

但这是 5.x 及更低版本中的语法错误

于 2012-05-10T19:33:13.490 回答
6

怎么样

echo reset(explode(',', 'a,b,c,d'))
于 2012-05-10T19:57:43.290 回答
6

史蒂夫

它有点短

strtok('a,b,c,d', ",")
于 2014-05-12T14:48:41.543 回答
4
<?php    
$array = explode(',', 'a,b,c,d');
$first = $array [0];
于 2012-05-10T19:32:42.983 回答
-1
        $int = substr($string,0,strpos($string,","));
于 2020-08-18T10:41:40.967 回答