3v4l.org

run code in 200+ php & hhvm versions
Bugs & Features
<?php $sat = strtotime("1981-03-28 02:30:00"); printf("Expected: 1981-03-28 02:30:00 + 3 days = 1981-03-31 02:30:00\n"); printf("Actual: " . "%s + 3 days = " . "%s\n\n", date("Y-m-d H:i:s", $sat), date("Y-m-d H:i:s", strtotime("+3 days", $sat)) ); $sun = strtotime("1981-03-29 02:30:00"); printf("Expected: 1981-03-29 02:30:00 + 3 days = 1981-04-01 02:30:00\n"); printf("Actual: " . "%s + 3 days = " . "%s\n\n", date("Y-m-d H:i:s", $sun), date("Y-m-d H:i:s", strtotime("+3 days", $sun)) ); $mon = strtotime("1981-03-30 02:30:00"); printf("Expected: 1981-03-30 02:30:00 + 3 days = 1981-04-02 02:30:00\n"); printf("Actual: " . "%s + 3 days = " . "%s\n\n", date("Y-m-d H:i:s", $mon), date("Y-m-d H:i:s", strtotime("+3 days", $mon)) );
Output for 4.3.0 - 4.4.9, 5.0.3 - 7.2.0
Expected: 1981-03-28 02:30:00 + 3 days = 1981-03-31 02:30:00 Actual: 1981-03-28 02:30:00 + 3 days = 1981-03-31 02:30:00 Expected: 1981-03-29 02:30:00 + 3 days = 1981-04-01 02:30:00 Actual: 1981-03-29 03:30:00 + 3 days = 1981-04-01 03:30:00 Expected: 1981-03-30 02:30:00 + 3 days = 1981-04-02 02:30:00 Actual: 1981-03-30 02:30:00 + 3 days = 1981-04-02 02:30:00
Output for 5.0.0 - 5.0.2
Expected: 1981-03-28 02:30:00 + 3 days = 1981-03-31 02:30:00 Actual: 1981-03-28 02:30:00 + 3 days = 1981-03-31 00:00:00 Expected: 1981-03-29 02:30:00 + 3 days = 1981-04-01 02:30:00 Actual: 1981-03-29 03:30:00 + 3 days = 1981-04-01 00:00:00 Expected: 1981-03-30 02:30:00 + 3 days = 1981-04-02 02:30:00 Actual: 1981-03-30 02:30:00 + 3 days = 1981-04-02 00:00:00