示例:
$difference = strtotime($to) - strtotime($from);
$months = ($difference / 86400 / 30 );
问题:但这种方式我从来没有得到确切的平均值。因为我不能确定30天也可能有31天和28天。
即使我试图除以12个月的平均值,但这也不能在每个月的选择案例中起作用 首先阅读并阅读 根据你自己的改变
答案 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
不完全确定你的问题是什么。