Php 获取逗号分隔字符串的第一个值

Php 获取逗号分隔字符串的第一个值,php,arrays,Php,Arrays,我正在寻找从逗号分隔的字符串中获取第一个值的最快/最短方法,内联 我所能做的就是 $string = 'a,b,c,d'; echo "The first thing is " . end(array_reverse(explode(',', $string))) . "."; 但我觉得这是多余的。有更好的方法吗? <?php $array = explode(',', 'a,b,c,d'); $first = $array [0]; 可能有效:) 在PHP 6.0中,您可以

我正在寻找从逗号分隔的字符串中获取第一个值的最快/最短方法,内联

我所能做的就是

$string = 'a,b,c,d';
echo "The first thing is " . end(array_reverse(explode(',', $string))) . ".";
但我觉得这是多余的。有更好的方法吗?


<?php    
$array = explode(',', 'a,b,c,d');
$first = $array [0];
可能有效:)


在PHP 6.0中,您可以简单地:

$first = explode(',', 'a,b,c,d')[0];
但是这在5.x及更低版本中是一个语法错误

echo reset(explode(',', 'a,b,c,d'))
史蒂夫

稍微短一点

strtok('a,b,c,d', ",")

在这种情况下,
list()
不是有点过分了吗?我的选择似乎更合理/更简单,但可能就是我;)在第一个解决方案中,
list()
返回一个数组。不过我喜欢你的第二个解决方案。希望它能在早期版本中工作。你是什么意思<代码>列表()
不返回任何内容,它不是函数。它在作业的左侧。
文字解引用
在PHP5.5中公布,因此没有任何语法错误。可能重复此项是最好的!请提供一些关于您正在做什么的详细信息,以获取更多详细信息!对于堆栈溢出,不鼓励使用仅代码的答案,因为它们没有解释堆栈溢出是如何解决问题的。请编辑您的答案,解释此代码的作用以及它如何回答问题,以便对OP以及其他有类似问题的用户有用。
strtok('a,b,c,d', ",")
        $int = substr($string,0,strpos($string,","));