PHP:根据给定日期获取星期中的所有日期

时间:2018-11-09 13:43:26

标签: php datetime

您好,我有这段代码,可以从给定日期获得星期几

<?php
$items = array();
// set current date
$datee = '11/01/2018';
// parse about any English textual datetime description into a Unix timestamp 
$ts = strtotime($datee);
// calculate the number of days since Monday
$dow = date('w', $ts);
$offset = $dow - 1;
if ($offset < 0) {
    $offset = 6;
}
// calculate timestamp for the Monday
$ts = $ts - $offset*86400;
// loop from Monday till Sunday 
for ($i = 0; $i < 7; $i++, $ts += 86400){
    if($i==0){
        $sunday = date("m/d/Y l", $ts);
    }else if($i==5){
        $saturday = date("m/d/Y l", $ts) . "\n";
    }
}
echo $saturday;
echo $sunday;
?>

这段代码从星期一开始,到下一个星期天结束,但是我要实现的目标是,从星期天开始,然后在星期天结束,我的预期日期应该是:

10/28/18(周日)和11/03/18(周六)

我应该在这里更改什么?

1 个答案:

答案 0 :(得分:0)

$offset = $dow - 1;(其中1表示一周中的第二天为星期一)更改为$offset = $dow - 0;,因为星期日是date()函数返回的一周中的第一天,然后将注释从星期一至星期日,等等。86400表示一天中的秒数(24h * 60m * 60s)。