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中异常处理的一些方法整理

每一个新的功能添加到PHP运行时会创建一个指数随机数,通过这样的方式开发者可以使用和甚至滥用这个新特性。然而,直到一些好的和坏的使用情况陆续出现开发者们才达成了共识。当这些新案例不断浮现...

php 无限级分类 获取顶级分类ID

有这样一个表,id是分类的ID,name是分类名称,pid是上级分类的ID。 现在有个分类ID,程序要找到它上级的上级的上级……分类的ID,简单说就是找出顶级分类的ID。 比如“新鲜水果...

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

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

关于shopex同步ucenter的redirect问题,导致script不运行

首先此问题来自向这个帖子 http://hi.baidu.com/fire_love_live/item/247276cfda421217b67a24c7 需要说明的是,并非15处需要修...

PHP详细彻底学习Smarty

基本语法  所有的smarty标签都被加上了定界符.在smarty里,所有定界符以外的内容都是静态的,当smarty遇到了模板标签,将尝试解释他们,然后再以恰当的方式输出.&n...