繁体   English   中英

PHP:基于日期范围计数

[英]PHP: Counting based on a date day range

好吧,我该怎么解释这个。 假设我有一组数字/天数。

$days = array(31,24,08,14,17);

现在我有 4 个具有特定日期范围的周期。

  • 周期 1:23-01
  • 周期 2: 02-08
  • 第三周期:09-15
  • 第4周期:16-22

所以现在我想计算每个周期中有多少天数组中的值。

周期 1 将计为 2,因为 31 和 24 属于 23-01 周期 2 将计为 1 (08) 周期 3 将计为 1 (14) 周期 4 将计为 1 (17)

这些数字来自给定日期的天数,我只需要计算落入的天数。我已经可以从第 2-4 周期开始计算,但第 1 周期有问题。

$cycle1 = 0;
$cycle2 = 0;
$cycle3 = 0;
$cycle4 = 0;

$days = array(31,24,08,14,17);

foreach ($days as $day)
{
    if ($day >= 23 && $day <= 01)
    {
        $cycle1++;
    }

    if ($day >= 02 && $day <= 08)
    {
        $cycle2++;
    }

    if ($day >= 09 && $day <= 15)
    {
        $cycle3++;
    }

    if ($day >= 16 && $day <= 22)
    {
        $cycle4++;
    }

}

谢谢,希望有人可以通过 date('d',strtotime(datestring)); 阐明如何做到这一点范围。

<?php
$days = array(31,24,14,17,1,16);
/*
Cycle 2: 02-08 =>() = 0
Cycle 3: 09-15 =>(14) = 1 
Cycle 4: 16-22 =>(17,16) = 2
Cycle 1: 23-01 =>(31,24,1) = 3
*/
$cycle1 = $cycle2 = $cycle3 = $cycle4 = 0;

foreach ($days as $day)
{
    if($day >= 23)
        $cycle1++;

    elseif($day >= 16)
        $cycle4++;

    elseif($day >= 9)
        $cycle3++;

    elseif($day >= 2)
        $cycle2++;

    else
        $cycle1++;
}
echo "cycle1=$cycle1<br>cycle2=$cycle2<br>cycle3=$cycle3<br>cycle4=$cycle4<br>";

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM