PHP массив — ищем максимальное значение в свойстве и возвращаем его вместе с его ключом

Admin PHP

Функция на PHP позволяющая найти в массиве максимальное цифровое значение и вернуть его вместе со своим ключом.

Имеем массив с ключами, пусть он называется $array и в нём следующее содержимое:

(
  [21] => 7
  [52] => 5
  [34] => 2
  [55] => 1
  [12] => 9
)

Нам нужно из этого массива получить одну пару (ключ-значение), у которой будет максимальное значение.

Для этого воспользуемся следующей функцией:

$max = max_value_with_key($array);

Теперь переменная $max будет содержать значение:

[12] => 9

Сама функция, которая возвращает максимальное значение. Можно использовать любую из двух функций ниже. Они работают одинаково. Однако вторая, вроде как лучше первой:

function max_value_with_key($array)
{
    $k = [];
    $max = max($array);
    foreach ($array as $k => $v)
    {
        if ($v == $max) return $k;
    }
    return $k;
}

или

function max_value_with_key(array $array)
{
    if (!$array) {
        return [];
    }

    $key = array_keys($array, max($array))[0];
    $value = $array[$key];

    return [$key => $value];
}

У сайта нет цели самоокупаться, поэтому на сайте нет рекламы. Но если вам пригодилась информация, можете лайкнуть страницу, оставить комментарий или отправить мне подарок на чашечку кофе.

Комментарии к статье “PHP массив — ищем максимальное значение в свойстве и возвращаем его вместе с его ключом” (2)

Добавить комментарий

Напишите свой комментарий, если вам есть что добавить/поправить/спросить по теме текущей статьи:
"PHP массив — ищем максимальное значение в свойстве и возвращаем его вместе с его ключом"