public static function fromString($time) { Assertion::length($time, 5); $hours = substr($time, 0, 2); $minutes = substr($time, 3, 2); $delimiter = substr($time, 2, 1); Assertion::same($delimiter, self::DELIMITER); Assertion::range($hours, 0, 23); Assertion::range($minutes, 0, 59); $time = new Time(); $time->hours = $hours; $time->minutes = $minutes; return $time; }