【发布时间】:2019-03-03 07:10:36
【问题描述】:
我正在尝试验证 dd-mm-yyyy 格式的日期,其中年份应该在 1900 年到 2019 年之间。
日期和月份部分工作正常,但我在年份部分失败。你能帮忙吗?
$date="31-12-2020";
if (preg_match("/^(0[1-9]|[1-2][0-9]|3[0-1])-(0[1-9]|1[0-2])-(19[0-9]{2}|20([0-1]|[0-9]){2})$/",$date)) {
echo 'True';
return true;
} else {
echo 'False';
return false;
}
【问题讨论】:
-
这是验证日期的不好方法,例如,如果您有 30-02-2019,它仍然是正确的;使用字符串到时间函数,转换日期格式,然后可以正确验证日期范围
-
为什么要使用正则表达式?
标签: php regex preg-match