php - 为什么这个 PHP 日期比较的行为不像我预期的那样?

标签 php mysql date

我有一个包含日期列表的 MySQL 数据库。我想将所有这些日期输出到一个页面中,前提是它们发生在今天之后。日期以 DATE 格式存储在数据库中,如 Y-m-d

我有以下代码(不包括查询等):

$dateToday = date('Y-m-d');

do{
    $dateCompare = new DateTime($row['date']);
    if ($dateCompare > $dateToday){
        echo '<p>'.$dateCompare -> format('Y-m-d').'</p>';
    } else {  
        echo '<p>FALSE</p>';
    }
}while ($row = $stmt->fetch(PDO::FETCH_ASSOC));

但这只会输出所有日期,包括我过去为测试目的设置的日期。我做错了什么?

最佳答案

$dateToday 是一个字符串。 $dateCompare 是一个 DateTime 对象。

关于php - 为什么这个 PHP 日期比较的行为不像我预期的那样?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21219070/

相关文章:

php - SQL - 您的 SQL 语法有错误吗?

mysql - XREF-在MySql中的同一个表中

php - 从可靠的系统来源自动检测时区

javascript - 获取当前日期 + 格林威治标准时间 1

php - 如何创建带分页的 'picture gallery'?

php - 用(非直线)线连接 div

php - PHP:Loop不断从SQL中检索所有用户,而不是一次执行一个

php - 图像环绕覆盖的链接

php - mySQL WHERE IN 与数组

php - Bonkers PHP 几个月?