答案不是$ array [0];
我的阵列设置如下
$array = array();
$array[7] = 37;
$array[19] = 98;
$array[42] = 22;
$array[68] = 14;
我正在对数组进行排序,并尝试在排序后获得尽可能高的匹配。所以在这种情况下$ array [19] = 98; 我只需要返回值98,它将始终位于数组的第一个位置。我无法使用$ array [0]引用,因为0键不存在。速度限制意味着我无法遍历数组以找到最高匹配。
还必须有比
更好的解决方案foreach ( $array as $value )
{
echo $value;
break;
}
答案 0 :(得分:4)
$keys = array_keys($array);
echo $array[$keys[0]];
或者您可以使用current()功能:
reset($array);
$value = current($array);
答案 1 :(得分:3)
如果我理解你的问题,你想要数组中的第一个键:
$firstValue = reset($array);
$firstKey = key($array);
答案 2 :(得分:2)
你可以随时做;
$array = array_values($array);
现在$ array [0]将是正确答案。
答案 3 :(得分:1)
如果你想要第一个元素,你可以使用array_shift,这不会循环任何东西,只返回值。
在你的例子中,它不是第一个元素,因此你的例子/问题似乎存在差异,或者我的理解中存在错误。
答案 4 :(得分:0)
如果您正在对它进行排序,您可以指定自己的排序例程,并在对其进行排序时选择最高值。
答案 5 :(得分:0)
$array = array_values($array);
echo $array[0];