Как проверить формат даты (гггг-мм-дд) в PHP: методы и примеры кода

Чтобы проверить формат даты в PHP, например «гггг-мм-дд», вы можете использовать различные методы. Вот несколько примеров:

Метод 1: регулярное выражение

function validateDateFormat($date) {
    $pattern = "/^\d{4}-\d{2}-\d{2}$/";
    return (bool) preg_match($pattern, $date);
}
$date = "2022-01-01";
if (validateDateFormat($date)) {
    echo "Valid date format";
} else {
    echo "Invalid date format";
}

Метод 2: класс DateTime

function validateDateFormat($date) {
    $format = 'Y-m-d';
    $dateTime = DateTime::createFromFormat($format, $date);
    return $dateTime && $dateTime->format($format) === $date;
}
$date = "2022-01-01";
if (validateDateFormat($date)) {
    echo "Valid date format";
} else {
    echo "Invalid date format";
}

Метод 3: функция strtotime

function validateDateFormat($date) {
    $parsedDate = date_parse($date);
    return $parsedDate['error_count'] === 0 && checkdate($parsedDate['month'], $parsedDate['day'], $parsedDate['year']);
}
$date = "2022-01-01";
if (validateDateFormat($date)) {
    echo "Valid date format";
} else {
    echo "Invalid date format";
}

Это всего лишь несколько методов проверки формата даты «гггг-мм-дд» в PHP. Вы можете выбрать тот, который лучше всего соответствует вашим потребностям.