代码如下:
function getWeekRange($date){
$ret=array();
$timestamp=strtotime($date);
$w=strftime('%u',$timestamp);
$ret['sdate']=date('Y-m-d 00:00:00',$timestamp-($w-1)86400);
$ret['edate']=date('Y-m-d 23:59:59',$timestamp+(7-$w)86400);
return $ret;
}
// 获取指定日期所在月的开始日期与结束日期
function getMonthRange($date){
$ret=array();
$timestamp=strtotime($date);
$mdays=date('t',$timestamp);
$ret['sdate']=date('Y-m-1 00:00:00',$timestamp);
$ret['edate']=date('Y-m-'$mdays' 23:59:59',$timestamp);
return $ret;
}
// 以上两个函数的应用
function getFilter($n){
$ret=array();
switch($n){
case 1:// 昨天
$ret['sdate']=date('Y-m-d 00:00:00',strtotime('-1 day'));
$ret['edate']=date('Y-m-d 23:59:59',strtotime('-1 day'));
break;
case 2://本星期
$ret=getWeekRange(date('Y-m-d'));
break;
case 3://上一个星期
$strDate=date('Y-m-d',strtotime('-1 week'));
$ret=getWeekRange($strDate);
break;
case 4: //上上星期
$strDate=date('Y-m-d',strtotime('-2 week'));
$ret=getWeekRange($strDate);
break;
case 5: //本月
$ret=getMonthRange(date('Y-m-d'));
break;
case 6://上月
$strDate=date('Y-m-d',strtotime('-1 month'));
$ret=getMonthRange($strDate);
break;
}
return $ret;
}
/
获取指定月份的第一天开始和最后一天结束的时间戳
@param int $y 年份 $m 月份
@return array(本月开始时间,本月结束时间)
/
function mFristAndLast($y="",$m=""){
if($y=="") $y=date("Y");
if($m=="") $m=date("m");
$m=sprintf("%02d",intval($m));
$y=str_pad(intval($y),4,"0",STR_PAD_RIGHT);
$m>12||$m<1$m=1:$m=$m;
$firstday=strtotime($y$m"01000000");
$firstdaystr=date("Y-m-01",$firstday);
$lastday = strtotime(date('Y-m-d 23:59:59', strtotime("$firstdaystr +1 month -1 day")));
return array("firstday"=>$firstday,"lastday"=>$lastday);
}
<php
$d=getdate();
$thismonth=$d['mon'];
$lastmonth=$thismonth-1;
if($lastmonth==0)
{
$lastmonth=12;
}
echo("上个月是:"
>
7月31日上一个月是 6月31日。因为没有6-31,所以换算成6-30的第二天,即7-1
上两个月是5月31日,没有错误
如果是上3个月,即4月31日,同理,因为没有4-31,所以换算成5-1
如果你希望上一个月指的是上个月1号,建议自定义一个函数。
function last_month($time) {
$y = date('Y',$time);
$m = date('m',$time);
if ($m>1) {
$m -= 1;
} else {
$m = 12;
$y -= 1;
}
$time = strtotime("$y - $m - 1");
return $time;
}
以上就是关于PHP获取当前日期所在星期(月份)的开始日期与结束日期(实现代码)全部的内容,包括:PHP获取当前日期所在星期(月份)的开始日期与结束日期(实现代码)、php获取当年的每个月的第一天和最后一天时间戳的函数、php计算上个月是几月份等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)