1
0
mirror of https://github.com/dg/dibi.git synced 2025-08-04 13:17:58 +02:00

DateTime extends DateTimeImmutable instead of DateTime (BC break)

This commit is contained in:
David Grudl
2018-03-23 12:23:48 +01:00
parent 8f47def4a2
commit c386357850

View File

@@ -13,7 +13,7 @@ namespace Dibi;
/** /**
* DateTime. * DateTime.
*/ */
class DateTime extends \DateTime class DateTime extends \DateTimeImmutable
{ {
use Strict; use Strict;
@@ -22,11 +22,10 @@ class DateTime extends \DateTime
*/ */
public function __construct($time = 'now', \DateTimeZone $timezone = null) public function __construct($time = 'now', \DateTimeZone $timezone = null)
{ {
$timezone = $timezone ?: new \DateTimeZone(date_default_timezone_get());
if (is_numeric($time)) { if (is_numeric($time)) {
parent::__construct('@' . $time); $tmp = (new self('@' . $time))->setTimezone($timezone);
$this->setTimezone($timezone ? $timezone : new \DateTimeZone(date_default_timezone_get())); parent::__construct($tmp->format('Y-m-d H:i:s.u'), $tmp->getTimezone());
} elseif ($timezone === null) {
parent::__construct($time);
} else { } else {
parent::__construct($time, $timezone); parent::__construct($time, $timezone);
} }