[php] 배열에서 가장 높은 키 / 인덱스 검색

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 else’]이면 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
해당 페이지의 첫 번째 댓글보기


답변