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