php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #78080 strtotime('last <day of week> + 7 days') incorrect result
Submitted: 2019-05-29 03:29 UTC Modified: 2020-01-20 17:28 UTC
From: romash1408 at yandex dot ru Assigned: derick (profile)
Status: Assigned Package: Date/time related
PHP Version: 7.3.5 OS: UNIX
Private report: No CVE-ID: None
Have you experienced this issue?
Rate the importance of this bug to you:

 [2019-05-29 03:29 UTC] romash1408 at yandex dot ru
Description:
------------
Today is 2019-05-29, wednesday.
In any php 7.* interpreter I write
echo date('Y-m-d', strtotime('last wednesday'));
and get last week's day (2019-05-22)

echo date('Y-m-d', strtotime('last wednesday + 1 day'));
shows correct date too (2019-05-23)

But
echo date('Y-m-d', strtotime('last wednesday + 7 day'));
gives result like 'last wednesday' was today (2019-06-05)

Live example on Ideone: https://ideone.com/1YzDpS

php 5.6 doesn't have this bug!

Test script:
---------------
$day = date("l");
echo date("Y-m-d", strtotime("last $day")) . "\n";
echo date("Y-m-d", strtotime("last $day + 1 day")) . "\n";
echo date("Y-m-d", strtotime("last $day + 6 day")) . "\n";
echo date("Y-m-d", strtotime("last $day + 7 day")) . "\n";


Expected result:
----------------
2019-05-21
2019-05-22
2019-05-27
2019-05-28

Actual result:
--------------
2019-05-21
2019-05-22
2019-05-27
2019-06-04

Patches

Add a Patch

Pull Requests

Add a Pull Request

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2019-12-01 14:40 UTC] leo dot sjoberg at gmail dot com
PR open at timelib: https://github.com/derickr/timelib/pull/71
 [2020-01-20 17:18 UTC] girgias@php.net
-Assigned To: +Assigned To: derick
 [2020-01-20 17:28 UTC] girgias@php.net
Related to Bug #78827
 
PHP Copyright © 2001-2020 The PHP Group
All rights reserved.
Last updated: Fri Jul 10 04:01:28 2020 UTC