News Feed
Sections




News Archive
Looking for more information on how to do PHP the right way? Check out PHP: The Right Way

Derick Rethans:
DateTimeImmutable
February 26, 2014 @ 10:26:45

In his latest post Derick Rethans (knower of all things date and time) talks about the DateTimeImmutable functionality. It has been added into the PHP 5.5 releases and provides the same DateTime functionality but removes the ability for modification (mutability).

The first time that my improved DateTime support made its way into PHP was officially in PHP 5.1, although the more advanced features such as the DateTime class only made it appearance in PHP 5.2. Since its introduction the DateTime class implementation suffered from one design mistake - arguably not something that even an RFC would have highlighted. [...] This mutability property that all modifying methods of the DateTime class have is highly annoying, and something that I would now rather remove. But of course we cannot as that would break backwards compatibility. So in PHP 5.5, after a few stumbles, I finally managed to rectify this.

He includes some code examples showing the current DateTime object's mutability (via the "modify" function) and the new immutable handling. This new handling doesn't update the current object but instead returns the modified object, leaving the initial one intact. You can find out more about this new object in the PHP manual.

0 comments voice your opinion now!
datetime datetimeimmutable mutability return object php55

Link: http://derickrethans.nl/immutable-datetime.html

blog comments powered by Disqus

Similar Posts

Stubbles Blog: My wishlist for PHP 6, pt1: The 'object' type hint

Michael Nitschinger: Benchmarking Cache Transcoders in PHP

DevShed: Generating Outputs from MySQL with Static Members and Methods in PHP 5

Sebastian Bergmann's Blog: PHPUnit 3.0 (Release)

Jacob Santos' Blog: XMLHttpRequest Quirks and PHP


Community Events





Don't see your event here?
Let us know!


composer conference laravel framework voicesoftheelephpant introduction list version security community library interview artisanfiles podcast language opinion release symfony tool series

All content copyright, 2014 PHPDeveloper.org :: info@phpdeveloper.org - Powered by the Solar PHP Framework