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

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

程序员文章站 2022-05-29 18:25:24
...
  1. // 获取指定日期所在星期的开始时间与结束时间

  2. //整理 程序员之家
  3. //at 2013-6-18
  4. function getWeekRange($date){
  5. $ret=array();
  6. $timestamp=strtotime($date);
  7. $w=strftime('%u',$timestamp);
  8. $ret['sdate']=date('Y-m-d 00:00:00',$timestamp-($w-1)*86400);
  9. $ret['edate']=date('Y-m-d 23:59:59',$timestamp+(7-$w)*86400);
  10. return $ret;
  11. }
  12. // 获取指定日期所在月的开始日期与结束日期

  13. function getMonthRange($date){
  14. $ret=array();
  15. $timestamp=strtotime($date);
  16. $mdays=date('t',$timestamp);
  17. $ret['sdate']=date('Y-m-1 00:00:00',$timestamp);
  18. $ret['edate']=date('Y-m-'.$mdays.' 23:59:59',$timestamp);
  19. return $ret;
  20. }
  21. // 以上两个函数的应用

  22. function getFilter($n){
  23. $ret=array();
  24. switch($n){
  25. case 1:// 昨天
  26. $ret['sdate']=date('Y-m-d 00:00:00',strtotime('-1 day'));
  27. $ret['edate']=date('Y-m-d 23:59:59',strtotime('-1 day'));
  28. break;
  29. case 2://本星期
  30. $ret=getWeekRange(date('Y-m-d'));
  31. break;
  32. case 3://上一个星期
  33. $strDate=date('Y-m-d',strtotime('-1 week'));
  34. $ret=getWeekRange($strDate);
  35. break;
  36. case 4: //上上星期
  37. $strDate=date('Y-m-d',strtotime('-2 week'));
  38. $ret=getWeekRange($strDate);
  39. break;
  40. case 5: //本月
  41. $ret=getMonthRange(date('Y-m-d'));
  42. break;
  43. case 6://上月
  44. $strDate=date('Y-m-d',strtotime('-1 month'));
  45. $ret=getMonthRange($strDate);
  46. break;
  47. }
  48. return $ret;
  49. }
  50. ?>
复制代码