当前位置:首页 > PHP教程 > php高级应用 > 列表

PHP获取日期对应星期,一周日期,星期开始与结束日期的方法

发布:smiling 来源: PHP粉丝网  添加日期:2018-11-14 15:27:59 浏览: 评论:0 

本文实例讲述了PHP获取日期对应星期、一周日期、星期开始与结束日期的方法。分享给大家供大家参考,具体如下:

  1. /* 
  2.  * 获取日期对应的星期 
  3.  * 参数$date为输入的日期数据,格式如:2018-6-22 
  4.  */ 
  5. function get_week($date
  6.   //强制转换日期格式 
  7.   $date_str = date('Y-m-d'strtotime($date)); 
  8.   //封装成数组 
  9.   $arr = explode("-"$date_str); 
  10.   //参数赋值 
  11.   //年 
  12.   $year = $arr[0]; 
  13.   //月,输出2位整型,不够2位右对齐 
  14.   $month = sprintf('%02d'$arr[1]); 
  15.   //日,输出2位整型,不够2位右对齐 
  16.   $day = sprintf('%02d'$arr[2]); 
  17.   //时分秒默认赋值为0; 
  18.   $hour = $minute = $second = 0; 
  19.   //转换成时间戳 
  20.   $strap = mktime($hour$minute$second$month$day$year); 
  21.   //获取数字型星期几 
  22.   $number_wk = date("w"$strap); 
  23.   //自定义星期数组 
  24.   $weekArr = array("0""1""2""3""4""5""6"); 
  25.   //获取数字对应的星期 
  26.   return $weekArr[$number_wk]; 
  27. /** 
  28.  * 获取一周日期 
  29.  * @param $time 时间戳 
  30.  * @param $format 转换格式 
  31.  */ 
  32. function get_week($time$format = "Y-m-d") { 
  33.   $week = date('w',$time); 
  34.   $weekname=array('星期一','星期二','星期三','星期四','星期五','星期六','星期日'); 
  35.   //星期日排到末位 
  36.   if(emptyempty($week)){ 
  37.     $week=7; 
  38.   } 
  39.   for ($i=0;$i<=6;$i++){ 
  40.     $data[$i]['date'] = date($format,strtotime'+'$i+1-$week .' days',$time)); 
  41.     $data[$i]['week'] = $weekname[$i]; 
  42.   } 
  43.   return $data
  44. /* 
  45.  * 获取某星期的开始时间和结束时间 
  46.  * time 时间 
  47.  * first 表示每周星期一为开始日期 0表示每周日为开始日期 
  48.  */ 
  49. function getWeekMyActionAndEnd($time = ''$first = 1) 
  50.   //当前日期 
  51.   if (!$time$time = time(); 
  52.   $sdefaultDate = date("Y-m-d"$time); 
  53.   //$first =1 表示每周星期一为开始日期 0表示每周日为开始日期 
  54.   //获取当前周的第几天 周日是 0 周一到周六是 1 - 6 
  55.   $w = date('w'strtotime($sdefaultDate)); 
  56.   //获取本周开始日期,如果$w是0,则表示周日,减去 6 天 
  57.   $week_start = date('Y-m-d'strtotime("$sdefaultDate -" . ($w ? $w - $first : 6) . ' days')); 
  58.   //本周结束日期 
  59.   $week_end = date('Y-m-d'strtotime("$week_start +6 days")); 
  60.   return array("week_start" => $week_start"week_end" => $week_end); 

Tags: PHP获取日期 PHP一周日期

分享到: