max

(PHP 4, PHP 5, PHP 7)

maxВозвращает наибольшее значение

Описание

max ( mixed $value , mixed ...$values ) : mixed

Альтернативная сигнатура (не поддерживается с именованными аргументами):

max ( array $value_array ) : mixed

Если первый и единственный параметр - массив, то max() возвратит наибольшее значение из этого массива. Если переданы хотя бы два параметра, max() вернет наибольший из них.

Замечание:

Значения разных типов будут сравниваться в соответствии со стандартными правилами сравнения. К примеру, нечисловая строка (string) будет сравниваться с целым числом (int) так, как будто это 0, а множество нечисловых строк (string) будут сравниваться алфавитно-цифровым порядком. Выбранное значение будет возвращено без конвертации типа.

Предостережение

Будьте осторожны при передаче аргументов разных типов, поскольку результат max() может вас удивить.

Список параметров

value

Любое поддающееся сравнению значение.

values

Любые поддающиеся сравнению значения.

value_array

Массив, содержащий значения.

Возвращаемые значения

max() вернет значение "наибольшего" из элементов массива, в соответствии со стандартными правилами сравнения. Если несколько разнотипных значений посчитаются идентичными (например 0 и 'abc'), функция вернет первое из них.

Если передан один пустой массив, то функция вернет false и вызовет ошибку уровня E_WARNING.

Примеры

Пример #1 Пример использования max()

<?php
echo max(13567);  // 7
echo max(array(245)); // 5

// 'hello' будет представлено как числое значение значение 0.
// Оба параметра имеют одинаковое значение, поэтому результат
// определяется порядком, в котором параметры переданы 
echo max(0'hello');     // 0
echo max('hello'0);     // hello

// Здесь сравниваются -1 < 0, так что 'hello' больше
echo max('hello', -1);    // hello

// В данном случае 0 больше, чем -1, поэтому результат равен 'hello'.
echo max(-1'hello');    // hello

// При сравнении массивов, разной длины - max вернет более длинный
$val max(array(222), array(1111)); // array(1, 1, 1, 1)

// При сравнении массивов одинаковой длины - max будет сравнивать их поэлементно
// слева направо, в данном примере 2 == 2, но 4 < 5
$val max(array(248), array(251)); // array(2, 5, 1)

// Если передан массив и не массив, в результате всегда будет возвращен массив
$val max('string', array(257), 42);   // array(2, 5, 7)

// Если один из аргументов NULL или булево значение, то сравнение с другими
// значениями будет происходить по правилу FALSE < TRUE, вне зависимости от того
// какого типа параметры переданы.
// В примере ниже, -10 трактуется как TRUE
$val max(-10FALSE); // -10

// 0 всегда трактуется как FALSE, значит он "меньше чем" TRUE
$val max(0TRUE); // TRUE
?>

Смотрите также

  • min() - Находит наименьшее значение
  • count() - Подсчитывает количество элементов массива или чего-либо в объекте