6

ループ(foreach)なしで値> 10の場合、配列をカウントする方法はありますか?

$arr=array(5,7,11,67,4,12,15);
$wanted_output=4
4

5 に答える 5

9

使うだけarray_reduceなら必要ないcount

echo array_reduce($arr, function ($a, $b) {
    return ($b > 10) ? ++$a : $a;
}); // returns 4
于 2013-05-25T09:20:09.800 に答える
2
$minVal = 10;
$counter = count(
    array_filter(
        $myArray,
        function($value) use ($minVal) {
            return $value > $minVal;
        }
    )
);
于 2013-05-25T09:21:02.450 に答える
0

array_count_values の使用:-

$array = array(1, 38, 1, 38,35);
print_r(array_count_values($array));

出力:-

Array
(
    [1] => 2
    [38] => 2
    [35] => 1
)

array_filter の使用:-

$arraycount = array_filter($array, function ($n) {
    return $n > 10;
});
echo count($arraycount);
于 2013-05-25T09:20:37.960 に答える
0

次のようなarray_count_valuesで試してください

print_r(array_count_values($my_array));

彼が10未満の値を数える必要がある場合は、次のように試してください

$my_array = array_filter($my_array, function ($n) {
    return $n > 10;
});
echo count($my_array);
于 2013-05-25T09:14:42.897 に答える