function FormatConstraint::validateDateTime
1 call to FormatConstraint::validateDateTime()
- FormatConstraint::check in vendor/
justinrainbow/ json-schema/ src/ JsonSchema/ Constraints/ FormatConstraint.php - invokes the validation of an element
File
-
vendor/
justinrainbow/ json-schema/ src/ JsonSchema/ Constraints/ FormatConstraint.php, line 156
Class
- FormatConstraint
- Validates against the "format" property
Namespace
JsonSchema\ConstraintsCode
protected function validateDateTime($datetime, $format) {
$dt = \DateTime::createFromFormat($format, $datetime);
if (!$dt) {
return false;
}
if ($datetime === $dt->format($format)) {
return true;
}
// handles the case where a non-6 digit microsecond datetime is passed
// which will fail the above string comparison because the passed
// $datetime may be '2000-05-01T12:12:12.123Z' but format() will return
// '2000-05-01T12:12:12.123000Z'
if (strpos('u', $format) !== -1 && preg_match('/\\.\\d+Z$/', $datetime)) {
return true;
}
return false;
}