Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/http/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 获取返回数组的第一个元素的更好方法_Php_Arrays - Fatal编程技术网

Php 获取返回数组的第一个元素的更好方法

Php 获取返回数组的第一个元素的更好方法,php,arrays,Php,Arrays,我发现自己在使用这个: $var=(string)array_shift(array_values($item->xpath($s))); 其中,$s是xpath搜索字符串,返回的是包含字符串的对象数组 这是可行的,但我不确定这是获得我想要的数据的最佳方式 我可以使用tempvar,但我想避免这种情况 有什么建议吗?我相信这会给出同样的结果 $var=array_shift($item->xpath($s)); 小心,因为它将从数组堆栈中删除元素,如果您只需要第一个值,可以使用:

我发现自己在使用这个:

$var=(string)array_shift(array_values($item->xpath($s)));
其中,$s是xpath搜索字符串,返回的是包含字符串的对象数组

这是可行的,但我不确定这是获得我想要的数据的最佳方式

我可以使用tempvar,但我想避免这种情况


有什么建议吗?

我相信这会给出同样的结果

$var=array_shift($item->xpath($s));
小心,因为它将从数组堆栈中删除元素,如果您只需要第一个值,可以使用:


请注意,这将倒回数组的内部指针并返回第一个元素。方法
current
返回指针恰好所在位置的元素-不保证总是第一个元素

我认为
array\u值在这里是无用的。使用PHP5.4,您可以执行
$item->xpath($s)[0]
为什么要在这里避免使用变量?
$results=$item->xpath($s)有什么问题$var=(字符串)$results[0]
?@knittl
语法错误,在我尝试您的版本时,/home/…第211行
中出现意外的“[”。我的php版本可能略高于5。4@TecBrat:函数调用上的数组下标是在PHP5.4(今天发布)中添加的,以前从未见过
current()
。谢谢。这应该是很多问题的答案我在各种PHP论坛上看到了“获取第一个元素”的问题。还有一个
end()
,它将获取最后一个元素。
$var = (string) current($item->xpath($s));
$var = $reset($item->xpath($s));