ID:               50048
 Updated by:       [email protected]
 Reported By:      arnbme at gmail dot com
-Status:           Open
+Status:           Feedback
 Bug Type:         Date/time related
 Operating System: Wamp or Linux
 PHP Version:      5.3.0
 New Comment:

Thank you for your bug report.

Your example prints the last Sunday for December 1st, 2009. The Sunday
before that date is November 29th. Can you explain why you think the
output is wrong? Also, could you provide a shorter reproduce script,
like this:

<?php
$now = strtotime('2009-12-01');
echo date('c', strtotime('last Sunday', $now))."\n";
?>


Previous Comments:
------------------------------------------------------------------------

[2009-11-01 14:12:20] arnbme at gmail dot com

Description:
------------
the last option of strtotime seems to ignore the int $now parameter. 

Reproduce code:
---------------
<?php
$br='<br>';
$mths =
array("","January","February","March","April","May","June","July","August","September","October","November","December");
$x = strtotime('2009-11-29');           //date to age
$Year = date("Y",$x);
$Month = date("m",$x);
if ($Month == 12){
        $Year++;
        $Month = 1;}
else
        $Month++;
$n=strtotime($mths[$Month].' 01, '.$Year);
echo 'base date:',date("Y-m-d",$n),$br;
if ($n==false)
        die ('bad date');
$nextdt=date( "Y-m-d",strtotime("last Sunday", $n));
echo 'Calc Last:',$nextdt,$br; //result is 2009-11-29 should be
2009-12-27
?>

Expected result:
----------------
Should show 2009-12-27

Actual result:
--------------
2009-11-29


------------------------------------------------------------------------


-- 
Edit this bug report at http://bugs.php.net/?id=50048&edit=1

Reply via email to