src/Reader.php
public function readQTime()
    {
        $msec = $this->readUInt();

        $time = strtotime('midnight') + $msec / 1000;

        $dt = \DateTime::createFromFormat('U.u', sprintf('%.6F', $time));
        $dt->setTimezone(new \DateTimeZone(date_default_timezone_get()));

        return $dt;
    }
public function readQTime()
    {
        $msec = $this->readUInt();

        $time = strtotime('midnight') + $msec / 1000;

        $dt = \DateTime::createFromFormat('U.u', sprintf('%.6F', $time));
        $dt->setTimezone(new \DateTimeZone(date_default_timezone_get()));

        return $dt;
    }
Reads a QTime from the stream and returns a DateTime with current timezone

The QTime will be sent as the number of milliseconds since midnight,
without any awareness of timezone or DST properties. Thus, reading this
in will assume it is relative to the current timezone.

@return \DateTime
@throws \UnderflowException