问题描述
|
如何使用PHP获得数组中最高的键/索引?我知道如何做到这些。
例如。从这个数组中,我想获得\“ 10 \”作为一个整数值:
$arr = array( 1 => \"A\",10 => \"B\",5 => \"C\" );
我知道如何编程,但是我问自己是否也有此功能。
解决方法
这应该工作正常
$arr = array( 1 => \"A\",10 => \"B\",5 => \"C\" );
max(array_keys($arr));
,您可以通过以下方式获取最大密钥:
<?php
$arr = array(\"a\"=>\"test\",\"b\"=>\"ztest\");
$max = max(array_keys($arr));
?>
,$keys = array_keys($arr);
$keys = rsort($keys);
print $keys[0];
应打印“ 10”
,我遇到一种情况,需要获取数组中的下一个可用键,即最高的+1。
例如,如果数组是$ data = [\'1 \'=> \'something,\'34 \'=> \'something \'],那么我需要计算35以将新元素添加到数组中具有比其他任何键更高的键。在一个空数组的情况下,我需要1作为下一个可用键。
这是有效的解决方案:
$highest = 0;
foreach($data as $idx=>$dummy)
{
if($idx > $highest)$highest=$idx;
}
$highest++;
它可以在所有情况下工作,无论是否为空数组。如果您只需要找到最高键而不是最高键+ 1,则删除最后一行。如果数组为空,则将得到0值。
,尝试使用max():http://php.net/manual/en/function.max.php
查看该页面上的第一条评论