note 126770 deleted from datetime.createfrominterface by cmb
| From: | cmb@php.net | Date: | Mon, 17 Jan 2022 16:04:41 +0000 |
| Subject: | note 126770 deleted from datetime.createfrominterface by cmb | ||
| References: | 1 | Groups: | php.notes |
| Request: | Send a blank email to php-notes+get-217508@lists.php.net to get a copy of this message | ||
Note Submitter: Julian
----
Another polyfill:
<?php
$dateTimeImmutable = new DateTimeImmutable();
$dateTime = createDateTimeFromInterface($dateTimeImmutable);
var_dump($dateTimeImmutable);
var_dump($dateTime);
function createDateTimeFromInterface(DateTimeInterface $dateTime): DateTime
{
if ($dateTime instanceof DateTime) {
return $dateTime;
}
return DateTime::createFromFormat('U', $dateTime->getTimestamp());
}
// OUTPUT:
object(DateTimeImmutable)#1 (3) {
["date"]=> string(26) "2022-01-17 07:27:30.690157"
["timezone_type"]=> int(3)
["timezone"]=> string(10) "US/Pacific"
}
object(DateTime)#2 (3) {
["date"]=> string(26) "2022-01-17 15:27:30.000000"
["timezone_type"]=> int(1)
["timezone"]=> string(6) "+00:00"
}