Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- MFH: Fixed bug #43452 (strings containing a weekday, or a number pl…
…us weekday behaved incorrect of the current day-of-week was the same as the one in the phrase).
- Loading branch information
Derick Rethans
committed
Jul 23, 2008
1 parent
a2cc7ec
commit 11f9cd8
Showing
4 changed files
with
77 additions
and
3 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,71 @@ | ||
--TEST-- | ||
Bug #43452 ("weekday" is not equivalent to "1 weekday" of the current weekday is "weekday") | ||
--INI-- | ||
date.default_timezone=Europe/Oslo | ||
--FILE-- | ||
<?php | ||
// <day> is equivalent to 1 <day> and will *not* forward if the current day | ||
// (November 1st) is the same day of week. | ||
$day = strtotime( "Thursday Nov 2007" ); | ||
echo date( DateTime::ISO8601, $day ), "\n"; | ||
$day = strtotime( "1 Thursday Nov 2007" ); | ||
echo date( DateTime::ISO8601, $day ), "\n"; | ||
$day = strtotime( "2 Thursday Nov 2007" ); | ||
echo date( DateTime::ISO8601, $day ), "\n"; | ||
$day = strtotime( "3 Thursday Nov 2007" ); | ||
echo date( DateTime::ISO8601, $day ), "\n\n"; | ||
|
||
// forward one week, then behaves like above for week days | ||
$day = strtotime( "Thursday Nov 2007" ); | ||
echo date( DateTime::ISO8601, $day ), "\n"; | ||
$day = strtotime( "+1 week Thursday Nov 2007" ); | ||
echo date( DateTime::ISO8601, $day ), "\n"; | ||
$day = strtotime( "+2 week Thursday Nov 2007" ); | ||
echo date( DateTime::ISO8601, $day ), "\n"; | ||
$day = strtotime( "+3 week Thursday Nov 2007" ); | ||
echo date( DateTime::ISO8601, $day ), "\n\n"; | ||
|
||
// First, second, etc skip to the first/second weekday *after* the current day. | ||
// This makes "first thursday" equivalent to "+1 week thursday" - but only | ||
// if the current day-of-week is the one mentioned in the phrase. | ||
$day = strtotime( "Thursday Nov 2007" ); | ||
echo date( DateTime::ISO8601, $day ), "\n"; | ||
$day = strtotime( "first Thursday Nov 2007" ); | ||
echo date( DateTime::ISO8601, $day ), "\n"; | ||
$day = strtotime( "second Thursday Nov 2007" ); | ||
echo date( DateTime::ISO8601, $day ), "\n"; | ||
$day = strtotime( "third Thursday Nov 2007" ); | ||
echo date( DateTime::ISO8601, $day ), "\n\n"; | ||
|
||
// Now the same where the current day-of-week does not match the one in the | ||
// phrase. | ||
$day = strtotime( "Friday Nov 2007" ); | ||
echo date( DateTime::ISO8601, $day ), "\n"; | ||
$day = strtotime( "first Friday Nov 2007" ); | ||
echo date( DateTime::ISO8601, $day ), "\n"; | ||
$day = strtotime( "second Friday Nov 2007" ); | ||
echo date( DateTime::ISO8601, $day ), "\n"; | ||
$day = strtotime( "third Friday Nov 2007" ); | ||
echo date( DateTime::ISO8601, $day ), "\n\n"; | ||
|
||
?> | ||
--EXPECT-- | ||
2007-11-01T00:00:00+0100 | ||
2007-11-01T00:00:00+0100 | ||
2007-11-08T00:00:00+0100 | ||
2007-11-15T00:00:00+0100 | ||
|
||
2007-11-01T00:00:00+0100 | ||
2007-11-08T00:00:00+0100 | ||
2007-11-15T00:00:00+0100 | ||
2007-11-22T00:00:00+0100 | ||
|
||
2007-11-01T00:00:00+0100 | ||
2007-11-08T00:00:00+0100 | ||
2007-11-15T00:00:00+0100 | ||
2007-11-22T00:00:00+0100 | ||
|
||
2007-11-02T00:00:00+0100 | ||
2007-11-02T00:00:00+0100 | ||
2007-11-09T00:00:00+0100 | ||
2007-11-16T00:00:00+0100 |