/** * {@inheritdoc} */ public function resolve(&$value) { if (is_numeric($value) && strlen($value) > 0) { $dateTime = new \Vegas\Util\DateTime(); $dateTime->setTimestamp($value); $value = $dateTime; } else { if (\Vegas\Util\DateTime::isValid($value)) { $dateTime = new \Vegas\Util\DateTime($value); $value = $dateTime; } } return $value; }
public function testShouldValidateGivenDateString() { $this->assertFalse(DateTime::isValid('Invalid date')); $this->assertFalse(DateTime::isValid(time())); $this->assertFalse(DateTime::isValid(null)); $date = new \DateTime(); // @see http://php.net/manual/en/datetime.formats.date.php if ($date->format('j') > 12) { $this->assertFalse(DateTime::isValid($date->format('d/m/Y'))); } else { $this->assertTrue(DateTime::isValid($date->format('d/m/Y'))); } $this->assertTrue(DateTime::isValid($date->format('Y-m-d H:i:s'))); $this->assertTrue(DateTime::isValid($date->format('m/d/Y'))); }