如何获得m个月的n个订单的精确平均值?

时间:2013-08-28 11:57:28

标签: php date datetime datepicker

示例:

$difference = strtotime($to) - strtotime($from);
$months = ($difference / 86400 / 30 );

问题:但这种方式我从来没有得到确切的平均值。因为我不能确定30天也可能有31天和28天。

即使我试图除以12个月的平均值,但这也不能在每个月的选择案例中起作用 首先阅读并阅读 根据你自己的改变

2 个答案:

答案 0 :(得分:0)

您可以使用此功能获取特定年份特定月份的天数:

PHP Manual - cal_days_in_month

您可以使用例如此解决方案获得全年的天数:

Finding the total number of days in year

另外,如果您只想获得当月的天数,可以使用:

date("t");

答案 1 :(得分:0)

你是否在一个日期范围内的月数?如果是这样,您可以修改此前一个答案以处理您想要的内容:

PHP: Loop through all months in a date range?

对于我认为你所追求的,你会做这样的事情

$date_from = strtotime("2013-08-01");
$date_to = strtotime("2013-10-01");

$month_count = 0;
while ($date_from < $date_to) {
  $date_from = strtotime('+1 month', $date_from);
  $month_count++;
}

// month_count = number of months covered in the date range

或者,如果您只想查看日期范围内的天数,可以执行以下操作:

$date_from = strtotime("2013-08-01");
$date_to = strtotime("2013-08-28");
$diff = $date_to - $date_from;
$days_in_range = floor($diff / (60*60*24));

//days_in_range = 27

不完全确定你的问题是什么。