(PHP 5 >= 5.6.0)
DateTimeImmutable::createFromMutable — Returns new DateTimeImmutable object encapsulating the given DateTime object
datetime
The mutable DateTime object that you want to convert to an immutable version. This object is not modified, but instead a new DateTimeImmutable object is created containing the same date time and timezone information.
Example #1 Creating an immutable date time object
<?php
$date = new DateTime("2014-06-20 11:45 Europe/London");
$immutable = DateTimeImmutable::createFromMutable( $date );
?>
Returns a new DateTimeImmutable instance.