php如果日期早于当前日期,则给出错误

时间:2014-01-13 19:08:08

标签: php

我在提交表单之前尝试创建一个php错误。 如果输入日期早于当前日期那么 echo您的输入日期是旧的 。但是我的代码中存在一些问题..请帮忙

PHP

if (strtotime($_POST['expiry_date']) < time()) {
    $errors[] = 'Your input date is old';
}

HTML

<input type="text" name="expiry_date" >

1 个答案:

答案 0 :(得分:1)

DateTime()使这很容易做到(假设$_POST['expiry_date']的DD / MM / YYY格式。12/01/2014对于日期的格式不明确。是12月1日吗?还是1月12日?):

$date = DateTime::createFromFormat('d/m/Y', $_POST['expiry_date']);
$now  = new DateTime();
if ($date < $now) {
    $errors[] = 'Your input date is old';
}

DateTime个对象具有可比性,因此您无需将它们转换为时间戳或字符串来进行比较。