从值高于/低于阈值的数组中删除项目

时间:2010-11-08 14:11:32

标签: php arrays sorting filter

从php中的数组中删除项目的最有效方法是什么,其中值大于预定阈值,例如:给出一个数组

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

我想删除值大于例如的所有项目2,保留关键关联,给予

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

我知道我可以使用foreach()循环执行此操作,但似乎应该有更优雅的方式。

1 个答案:

答案 0 :(得分:12)

无论您使用什么,都必须循环播放数组,但您可以使用array_filter隐藏它:

function test($var) { return $var < 2; }
$data = array_filter($data, 'test');