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

yipeiwu_com5年前PHP代码库
废话不多少,上代码
复制代码 代码如下:

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

相关文章

PHP中防止直接访问或查看或下载config.php文件的方法

或是,PHP的设计本身就避免直接查看文件内容的情况? 从安全角度考虑,这个系统级的文件应该做什么保护措施? 网友完善的答案 经调研,得出以下常用方法: 1 在程序中定义一个标识变量 复制...

PHP 批量下载一系列小型文件 函数

在工作时找素材是一个特别费时间的事情,有时要下载一系统的小图片,或者小文档、小视频,只要文件命名有规则,就可以通过PHP来批量下载下来,速度比较快,可以省下不少时间的。此处理方式,不适合大文件下载哦。...

关于Laravel Service Provider开发设置延迟加载时遇到的问题详解

前言 本文主要介绍了关于Laravel Service Provider设置延迟加载时遇到的一些问题,之所有这篇文章,是因实际项目需求,近日在开发 laravel-database-lo...

解析php根据ip查询所在地区(非常有用,赶集网就用到)

dat文件,关于ip对应地区的信息文件qqwry.dat文件网上自己下载class类文件,解析qqwry.data文件的IpLocation.php文件复制代码 代码如下:<?ph...

php使用codebase生成随机数

有25幅作品拿去投票,一次投票需要选16幅,单个作品一次投票只能选择一次。前面有个程序员捅了漏子,忘了把投票入库,有200个用户产生的投票序列为空。那么你会如何填补这个漏子? 当然向上级...