min

(PHP 4, PHP 5, PHP 7, PHP 8)

minНаходит наименьшее значение

Описание

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

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

min(array $value_array): mixed

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

Замечание:

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

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

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

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

value

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

values

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

value_array

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

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

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

Ошибки

Если передан пустой массив, функция min() выбрасывает ошибку ValueError.

Список изменений

Версия Описание
8.0.0 Функция min() теперь в случае возникновения ошибки выбрасывает ошибку ValueError; ранее возвращалось значение false и выдавалась ошибка уровня E_WARNING.

Примеры

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

<?php
echo min(2, 3, 1, 6, 7); // 1
echo min(array(2, 4, 5)); // 2

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

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

// При сравнении массивов, разной длины - min вернёт самый короткий
$val = max(array(2, 2, 2), array(1, 1, 1, 1)); // array(2, 2, 2)

// При указании нескольких массивов, они сравниваются полностью
// в нашем примере: 2 == 2, но 4 < 5
$val = min(array(2, 4, 8), array(2, 5, 1)); // array(2, 4, 8)

// При указании массива и не массива,
// первый никогда не возвращается, т.к. считается самым большим
$val = min('string', array(2, 5, 7), 42); // string

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

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

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

  • max() - Возвращает наибольшее значение
  • count() - Подсчитывает количество элементов массива или Countable объекте