请问如何得到本月和前几月的月份,包括有跨年情况,以及得到本周及上几周的自然周的时间范围
比如 我现在是2010年3月4日,要得到前6个月的月份:2010-3、2010-2、2010-1、2009-12、2009-11、2009-10周的情况是 比如现在是2010年5月4日,本周时间范围是2010-5-2至2010-5-8、上周是2010-4-25至2010-5-1、上上周是2010-4-18至2010-4-24,以此类推。
比如 我现在是2010年3月4日,要得到前6个月的月份:2010-3、2010-2、2010-1、2009-12、2009-11、2009-10周的情况是 比如现在是2010年5月4日,本周时间范围是2010-5-2至2010-5-8、上周是2010-4-25至2010-5-1、上上周是2010-4-18至2010-4-24,以此类推。
$time = strtotime('2010-3-4');
for ($i=0;$i<5;$i++){
$time2 = strtotime('-'.$i.' month',$time);
echo date('Y-m',$time2)."\n";
}$time = strtotime('2010-5-4');
for ($i=0;$i<5;$i++){
$week_start = strtotime('-'.$i.' week -'.date('N',$time).' day',$time);
$week_end = strtotime('-'.$i.' week +'.(7-date('N',$time)-1).' day',$time);
echo date('Y-m-d',$week_start).' - '.date('Y-m-d',$week_end)."\n";
}
?>