выберите минимальное (самое низкое) или максимальное (самое большое) из числа с плавающей точкой массива - PullRequest
0 голосов
/ 09 марта 2019

Halo people.

Существует возможность выбора выбора минимального (самого низкого) или максимального (самого большого) из числа с плавающей точкой массива?

Я пытаюсь min (массив) и max (массив), но не работает? Не могу найти по мануалу.

Вы можете мне помочь?

Массив приходит из sql

Array ( [0] => 1.11954 ) Array ( [0] => 1.11983 ) Array ( [0] => 1.11854 ) Array ( [0] => 1.11978 ) Array ( [0] => 1.1198 ) Array ( [0] => 1.12024 ) Array ( [0] => 1.11994 ) Array ( [0] => 1.12055 ) Array ( [0] => 1.12106 ) Array ( [0] => 1.12186 ) Array ( [0] => 1.12191 ) Array ( [0] => 1.1214 ) Array ( [0] => 1.12432 ) Array ( [0] => 1.12398 )
 for ($list = 1; $list <= $rezult; $list++)
    {
     $_array=array($rekord['xxx'])
    }
print_r($_array);
$_min=min($_array);
$_max=max($_array);

1 Ответ

3 голосов
/ 09 марта 2019

Ваша проблема в том, что ваш массив - это массив массивов, а не массив чисел с плавающей запятой, поэтому для нахождения минимальных / максимальных значений вам фактически нужно сгладить массив, что вы можете сделать с помощью array_column:

echo min(array_column($array, 0)), " ", max(array_column($array, 0));

Вывод:

1.11854 1.12432

Демонстрация на 3v4l.org

В качестве альтернативы вы можете перекодировать ваш цикл для передачи значений, а не массивов в него:

for ($list = 1; $list <= $rezult; $list++) {
     $_array[] = $rekord['xxx']
}
echo min($_array) . " " . max($_array);
...