ID:               51096
 Updated by:       der...@php.net
 Reported By:      phpbugs at rizzt dot kicks-ass dot org
-Status:           Bogus
+Status:           Assigned
 Bug Type:         Date/time related
 Operating System: linux
 PHP Version:      5.2.12
-Assigned To:      
+Assigned To:      derick
 New Comment:

Actually, there is a bug here "first day" and "last day" should be "+1
day" and "-1 day".


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

[2010-02-20 15:22:05] der...@php.net

That's because those things were introduced in PHP 5.3:

der...@kossu:~$ pe 5.2dev
der...@kossu:~$ php
<?php
echo strftime('1 %Y/%m/%d')."\n";
echo strftime('2 %Y/%m/%d', strtotime('first day'))."\n";
echo strftime('3 %Y/%m/%d', strtotime('last day'))."\n";
echo strftime('4 %Y/%m/%d', strtotime('next month'))."\n";
echo strftime('5 %Y/%m/%d', strtotime('first day next month'))."\n";
echo strftime('6 %Y/%m/%d', strtotime('last day next month'))."\n";
?>
1 2010/02/20
2 2010/02/21
3 2010/02/19
4 2010/03/20
5 2010/03/21
6 2010/03/19


der...@kossu:~$ pe 5.3dev
der...@kossu:~$ php
<?php
echo strftime('1 %Y/%m/%d')."\n";
echo strftime('2 %Y/%m/%d', strtotime('first day'))."\n";
echo strftime('3 %Y/%m/%d', strtotime('last day'))."\n";
echo strftime('4 %Y/%m/%d', strtotime('next month'))."\n";
echo strftime('5 %Y/%m/%d', strtotime('first day next month'))."\n";
echo strftime('6 %Y/%m/%d', strtotime('last day next month'))."\n";
?>
1 2010/02/20
2 2010/02/01
3 2010/02/28
4 2010/03/20
5 2010/03/01
6 2010/03/31


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

[2010-02-20 15:20:45] phpbugs at rizzt dot kicks-ass dot org

Sorry, I forgot to change 2 & 3 

Expected result:
----------------
1 2010/02/20
2 2010/02/01
3 2010/02/28
4 2010/03/20
5 2010/03/01
6 2010/03/31

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

[2010-02-20 15:18:08] phpbugs at rizzt dot kicks-ass dot org

Description:
------------
strtotime with "first day next month" or "last day next month" does not

work

Reproduce code:
---------------
echo strftime('1 %Y/%m/%d')."\n";
echo strftime('2 %Y/%m/%d', strtotime('first day'))."\n";
echo strftime('3 %Y/%m/%d', strtotime('last day'))."\n";
echo strftime('4 %Y/%m/%d', strtotime('next month'))."\n";
echo strftime('5 %Y/%m/%d', strtotime('first day next month'))."\n";
echo strftime('6 %Y/%m/%d', strtotime('last day next month'))."\n";



Expected result:
----------------
1 2010/02/20
2 2010/02/21
3 2010/02/19
4 2010/03/20
5 2010/03/01
6 2010/03/31



Actual result:
--------------
1 2010/02/20
2 2010/02/21
3 2010/02/19
4 2010/03/20
5 2010/03/21
6 2010/03/19




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


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

Reply via email to