一、本月起始和结束
//获取本月开始的时间戳 $beginThismonth=mktime(0,0,0,date('m'),1,date('Y')); //获取本月结束的时间戳 $endThismonth=mktime(23,59,59,date('m'),date('t'),date('Y'));
二、上月起始和结束
写法一:
$m = date('Y-m-d', mktime(0,0,0,date('m')-1,1,date('Y'))); //上个月的开始日期 $t = date('t',strtotime($m)); //上个月共多少天 $start = date('Y-m-d', mktime(0,0,0,date('m')-1,1,date('Y'))); //上个月的开始日期 $end = date('Y-m-d', mktime(0,0,0,date('m')-1,$t,date('Y'))); //上个月的结束日期 //echo 15*24*3600; //echo 30*24*3600; $time=strtotime($start); dump(date('Y-m-d H:i:s',$time));//2017-06-01 00:00:00 $jieshu=strtotime($end); dump(date('Y-m-d H:i:s',$jieshu));//2017-06-30 00:00:00
写法二:
$thismonth = date('m'); $thisyear = date('Y'); if ($thismonth == 1) { $lastmonth = 12; $lastyear = $thisyear - 1; } else { $lastmonth = $thismonth - 1; $lastyear = $thisyear; } $lastStartDay = $lastyear . '-' . $lastmonth . '-1'; $lastEndDay = $lastyear . '-' . $lastmonth . '-' . date('t', strtotime($lastStartDay)); $b_time = strtotime($lastStartDay);//上个月的月初时间戳 $e_time = strtotime($lastEndDay);//上个月的月末时间戳2017-06-30 00:00:00(注意 是最后一天的开始时间点)