检查数组的绝对值是否在指定数字的正负值范围内

时间:2012-02-20 23:43:08

标签: php arrays multidimensional-array

如何遍历此数组并查明是否至少有一个值在0或0的正负250范围内?换句话说,如果至少有一个值在-250到+250之间,那么这是一个积极的结果。否则,返回否定。

这是数组(由于数字-144,它应返回正数结果):

Array
(
[Nov 18, 2011] => Array
    (
        [C] => -1738
    )
    (
        [I] => -144
    )
[Jan 13, 2012] => Array
    (
        [C] => -3193
    )
    (
        [M] => 4377
    )
)

3 个答案:

答案 0 :(得分:2)

function containsDesiredValue($array){
    foreach ($array as $subArray)
        foreach ($subArray as $value)
            if (abs($value) <= 250)
                return true;
    return false;
}

假设数组的结构没有改变。

答案 1 :(得分:2)

<?php
foreach ($root as $data) {
    $positive = false;

    foreach ($data as $number) {
        if ($number >= -250 && $number <= 250) {
            $positive = true;
            break;
        }
    }

    if ($positive)
        break;
}

if ($positive === true) ...

答案 2 :(得分:2)

function check250($array) {
    foreach ($array as $lvl1)
        foreach($lvl1 as $num)
            if ($num <= 250 && $num >= -250) return true;
    return false;
}