我有一个PHP内循环,应该得到过去的12个完整月份。今天,5月31日,这些月份的标签似乎重复。使用PHP日期与strtotime循环几个月创建重复
三月取代二月 月取代十一月 十月取代九月
$count = 1;
$date_array = array();
while ($count <= 12) {
// Calculate date
$query_year = date('Y', strtotime('-' . $count . ' months America/Chicago'));
$query_month = date('m', strtotime('-' . $count . ' months America/Chicago'));
$display_month = date('M', strtotime('-' . $count . ' months America/Chicago'));
$date_array[] = array(
'query_year' => $query_year,
'query_month' => $query_month,
'display_month' => $display_month
);
$count ++;
}
print_r($date_array);
下面是动作的代码:http://ideone.com/dBklOH
任何想法,为什么发生这种情况?它仅在今天即五月三十一日开始,并可能在明天之前自行解决。
如果你从5月31日减去1个月,你会有什么期望.....应该PHP告诉你4月31日? –
[如何获取上一个月和今年相对于今天,使用strtotime和日期?]可能重复(http://stackoverflow.com/questions/5489502/how-to-get-previous-month-and-year-relative到今天使用strtotime和日期) –
@MarkBaker我希望PHP找到上个月的最后一个日期,4月30日。同样从3月31日减去1个月,我预计会看到2月28日/ 29日。 1 month!=本月中的天数 –