php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #45696 Allow method-chaining for misc. DateTime methods
Submitted: 2008-08-03 08:25 UTC Modified: 2008-08-03 16:45 UTC
From: mathieuk at gmail dot com Assigned: derick
Status: Closed Package: Date/time related
PHP Version: 5.3CVS-2008-08-03 (CVS) OS: Mac OSX 10.5.3
Private report: No CVE-ID:
 [2008-08-03 08:25 UTC] mathieuk at gmail dot com
Description:
------------
Feature request. 

Might be nice if the new DateTime::add(), DateTime::sub() and already 
existing DateTime::modify() methods would allow method chaining.





Reproduce code:
---------------
$datetime = new DateTime();
$interval = DateInterval::createFromDateString('2 weeks');

echo $datetime->add($interval)->format('d-m-Y H:i');



Expected result:
----------------
An echo'ed string showing the date of 2 weeks from 'now'.





Actual result:
--------------
Fatal error: Call to a member function format() on a non-object in 
/Users/mathieu/Source/tests/datetime/Modify.php on line 4





Patches

Add a Patch

Pull Requests

Add a Pull Request

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2008-08-03 08:48 UTC] derick@php.net
It works for ->modify() already, and most of the other modification methods. Apparently I forgot to add it for ->add() and ->sub() though, so classifying this as a bug instead.

php -r 'echo date_create("")->modify("+3 weeks")->format("c\n");'

2008-08-24T10:35:58+02:00
 [2008-08-03 16:45 UTC] derick@php.net
This bug has been fixed in CVS.

Snapshots of the sources are packaged every three hours; this change
will be in the next snapshot. You can grab the snapshot at
http://snaps.php.net/.
 
Thank you for the report, and for helping us make PHP better.


 
PHP Copyright © 2001-2014 The PHP Group
All rights reserved.
Last updated: Thu Apr 17 01:01:56 2014 UTC