Удалить элементы из массива со значением выше / ниже порога - PullRequest
4 голосов
/ 08 ноября 2010

Какой самый эффективный способ удалить элементы из массива в php, где значение больше, чем предварительно определенный порог, например, задан массив

Array
(
    [0] => 1.639
    [1] => 2.168
    [4] => 1.897
    [6] => 4.129
)

Я хотел бы удалить все элементы со значением, превышающим, например, 2, сохранение ключевых ассоциаций, чтобы дать

Array
(
    [0] => 1.639
    [4] => 1.897
)

Я знаю, что могу сделать это, используя цикл foreach(), но кажется, что должен быть более элегантный способ.

1 Ответ

12 голосов
/ 08 ноября 2010

Независимо от того, что вы используете, массив должен быть зациклен, но вы можете скрыть его, используя array_filter:

function test($var) { return $var < 2; }
$data = array_filter($data, 'test');
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...