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.
8.0.0 Поскольку сравнения строк с числами были изменены, функция min() больше не возвращает другое значение в зависимости от порядка аргументов для таких случаев.

Примеры

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

<?php

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

// Здесь сравниваются -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