本文实例讲述了php计算给定日期所在周的开始日期和结束日期。分享给大家供大家参考,具体如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
<?php /** * 取得给定日期所在周的开始日期和结束日期 * @param string $gdate 日期,默认为当天,格式:YYYY-MM-DD * @param int $weekStart 一周以星期一还是星期天开始,0为星期天,1为星期一 * @return array 数组array( "开始日期 ", "结束日期"); */ function getAWeekTimeSlot( $gdate = '' , $weekStart = 0) { if (! $gdate ){ $gdate = date ( "Y-m-d" ); } $w = date ( "w" , strtotime ( $gdate ) ); //取得一周的第几天,星期天开始0-6 $dn = $w ? $w - $weekStart : 6; //要减去的天数 $st = date ( "Y-m-d" , strtotime ( "$gdate - " . $dn . " days " ) ); $en = date ( "Y-m-d" , strtotime ( "$st +6 days " ) ); return array ( $st , $en ); //返回开始和结束日期 } $timeSlot =getAWeekTimeSlot( '2017-01-24' ,1); echo "Week Start:{$timeSlot[0]}--->Week End: {$timeSlot[1]} " ; ?> |
运行结果如下:
1
|
Week Start:2017-01-23--->Week End: 2017-01-29 |
希望本文所述对大家PHP程序设计有所帮助。