如何识别给定的数字是否在给定的数组范围内


How to identify if given number is there in a given array range?

我有一个存储数字的数组。数字的计数随时间而变化。还有另一个变量a保存数字,我需要找出$num落在哪个范围内。在上面的例子中,$num在64以下。(大于32小于64)

$ar = array(0, 32, 64, 96, 128, 160, 192, 224);
$num = 44;

我怎么破解这个?

$ar = array(0, 32, 64, 96, 128, 160, 192, 224);
$num = 44;
$range = min(array_filter($ar, function($i) use($num) {
    return $i > $num;
}));
var_dump($range);

在线演示:http://ideone.com/KV6MWD