欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

PHP获取当前日期所在星期(月份)的开始日期与结束日期(实现代码)

程序员文章站 2022-03-20 08:57:55
废话不多少,上代码复制代码 代码如下: // 获取指定日期所在星期的开始时间与结束时间 function getweekrange($date){&nb...
废话不多少,上代码
复制代码 代码如下:

 // 获取指定日期所在星期的开始时间与结束时间
 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;
 }