Warning: array_merge(): Argument #2 is not an array in /hsphere/local/home/magistr/codeismy.name/wp-content/plugins/wp-pagenavi/scb/Options.php on line 46

Нахождение минимального числа в массиве

Дата: Сентябрь 28, 2009

(3) комментариев

Я сильно удивился, когда в списке функций php не нашол ни единой функции по нахождению минимального значения массива, хоть это задачи на самом деле простая, но можно было её решить и програмно :)
Решить её можно несколькими способами, какой выбирите вы это уже ваше дело.
Вот пример нескольких методов, вы можете придумать ваш :)

Функция вернёт значение ключа с минимальным значением

1
2
3
4
5
6
7
8
9
10
11
function array_key_min($arr) {
    $index_min='';
    foreach($arr as $k=>$v) {
        if ($index_min=='') {$index_min=$k; $min=$arr[$k];}
        if ($arr[$k] < $min) {
            $index_min = $k;
            $min=$arr[$k];
        }
    }
    return $index_min;
}

Функция вернёт минимальное значение

1
2
3
4
5
6
7
8
9
10
11
function array_val_min($arr) {
    $index_min='';
    foreach($arr as $k=>$v) {
        if ($index_min=='') {$index_min=$k; $min=$arr[$k];}
        if ($arr[$k] < $min) {
            $index_min = $k;
            $min=$arr[$k];
        }
    }
    return $min;
}

Вернёт ключ минимального значения

1
2
3
4
5
6
7
function array_key_min($arr) {
    natcasesort($arr);
    foreach($arr as $k=>$v) {
        return $k;
        exit();
    }
}

Вернёт минимальное значение

1
2
3
4
5
6
7
function array_val_min($arr) {
    natcasesort($arr);
    foreach($arr as $k=>$v) {
        return $v;
        exit();
    }
}

Пользоваться так

1
2
3
$ar=array("1"=>"21","2"=>"5","3"=>"15");
echo array_val_min($ar); // вернёт 2
echo array_key_min($ar); // в
a




    3 комментариев на "Нахождение минимального числа в массиве"

    alien сказал:
    30.09.2009

    O.o вот это велосипед!Есть же функция min()
    http://www.php.ru/manual/function.min.html

    admin сказал:
    30.09.2009

    блин пипец, чувствую себя теперь нубом))))
    а я искал в манах и не нашел.. но для случая в котором я использовал этот скриптик нужен был именно ключь минимального значения :)

    Сергей сказал:
    02.10.2009

    Я помню мы в школе на паскале такое писали. Даже методы различные для нахождения изучали:)

    Продолжение дискуссии на форуме: link


    Вы можете продолжить обсуждение этой статьи на форуме


    Имя : 
    Почта : 
    Сайт : 
    Комментарий : 

    Проверка комментариев включена. Прежде чем Ваши комментарии будут опубликованы пройдет какое-то время.

    Создание сайта - Echo-group Раскрутка сайтов