PHP检测日期格式

<?php
$date1 = '2019-01-01';
$date2 = '2019-01-01 23:59';
$date3 = '2019-01-01 23:59:59';
$date4 = '2019-01';
function checkDateTime($date) {
    $patten = "/^d{4}[-](0?[1-9]|1[012])[-](0?[1-9]|[12][0-9]|3[01])(s+(0?[0-9]|1[0-9]|2[0-3]):(0?[0-9]|[1-5][0-9])(:(0?[0-9]|[1-5][0-9]))?)?$/";
    if (preg_match($patten, $date)) {
        echo $date.' 通过验证'.PHP_EOL;
    } else {
        echo $date.' 日期非法'.PHP_EOL;
    }
}

checkDateTime($date1);
checkDateTime($date2);
checkDateTime($date3);
checkDateTime($date4);

结果

2019-01-01 通过验证
2019-01-01 23:59 通过验证
2019-01-01 23:59:59 通过验证
2019-01 日期非法

原文地址:https://www.cnblogs.com/jiqing9006/p/11313346.html