将使用foreach处理的数字分成特定的数字类别

时间:2013-07-09 03:52:13

标签: php arrays foreach

这是一个场景:下面代码中的$ numbers数组包含一千个数字(0 - 1000)。我需要计算这些数字中有多少适合以下每个类别:

  1. 其中有多少介于1和1000之间,
  2. 其中有多少小于1,
  3. 其中有多少大于1000.
  4. 我创建了一个foreach循环来查看每个数字一个接一个,但是现在它正在处理它们属于所有三个类别的每个数字。

    如何获得正确的计数?即,分别符合“小于1”,“1至1000”和“大于1000”类别的数量。

    当前代码:

    $numbers = get_numbers();
    $count_less_than_one           = 0;
    $count_between_one_and_thousand = 0;
    $count_greater_than_thousand    = 0;
    
    foreach ($numbers as $number) {
       $count_less_than_one += 1;
       $count_between_one_and_thousand += 1;
       $count_greater_than_thousand += 1;
    }
    

1 个答案:

答案 0 :(得分:2)

非常简单地包括条件。您可以使用if

foreach ($numbers as $number) {

    if ($number < 1) $count_less_than_one += 1;

    else if ($number >= 1 && $number <= 1000) $count_between_one_and_thousand += 1;

    else $count_greater_than_thousand += 1;
}