周日的Strtotime功能错误

时间:2016-09-25 13:16:42

标签: php strtotime

每个星期天,strtotime功能在我的日程安排网站上做了很奇怪的事情。它显示下周的日期,而不是+2周。

我的代码:

    date_default_timezone_set("Europe/Amsterdam");
    $time = time();
    //Check the date of Monday and Sunday from 2 weeks later.
    $monday = date( 'd-m-Y', strtotime( '+1 week monday' ) );
    $sunday = date( 'd-m-Y', strtotime( '+2 week sunday' ) );
    //Check the weeknumber of this week and add 2, so that it shows the weeknumber of 2 weeks later.
    $weekdata = date("W", strtotime('+1 day', $time));
    $weeknumber = $weekdata + 2;

$Weeknumber显示正确的信息:42,$monday$sunday显示下周的星期一和星期日(03-10-2016 | 09-10-2016),但我想让它显示(10-10-2016 | 16-10-2016)

另外,有没有办法让星期一星期一开始而不是星期日?因为,在本周""页面,它已经显示了第26-09-2016周的数据02-10-2016而不是19-09-2016 | 25-10-2016。

1 个答案:

答案 0 :(得分:0)

strtotime函数错误发生在PHP 5.5.31版上。升级您的PHP版本或尝试下面的修复。

所以我用if / else语句修复了错误。

$(this ).css( 'pointer-events', 'none' );

由于这个bug只发生在星期天,所以我让if / else语句只检查星期日而不是其他日子。如果今天不是星期天,它会运行else代码,这是获取本周数据的常规方法。我会看到,如果今天不是星期日,而是一周中的另一天,代码是否可以100%运行。

我只想向将来访问此问题的人展示我对此问题的解决方案。