Regex для проверки даты в PHP с использованием формата YYYY-MM-DD

Я пытаюсь сделать проверку даты регулярным выражением. У меня проблема в том, что я использую поле ввода с"date" тип, который работает как Charm в Chrome; он открывает календарь, похожий на Chrome, но в остальном он ничего не делает, поэтому я решил пойти на ручной ввод даты для остальных.

Это мое сообщение об ошибке (я ищу формат YYYY-MM-DD):

$date_regex ='#^(19|20)\d\d[\- /.](0[1-9]|1[012])[\- /.](0[1-9]|[12][0-9]|3[01])$#';
$hiredate = $_POST['hiredate'];
if (!preg_match($date_regex, $hiredate)){
    $errors[] = 'Your hire date entry does not match the YYYY-MM-DD required format.';
}

Я знаю, что есть много примеров по этому поводу, но я уже пробовал 20, и я не мог решить это. Может быть, я что-то упустил.

Вот поле ввода, если оно несколько уместно:

<input type="date" name="hiredate" />

Ответы на вопрос(3)

Ваш ответ на вопрос