【问题标题】:comparing dates in PHP and MYSQL比较 PHP 和 MYSQL 中的日期
【发布时间】:2009-09-17 17:46:55
【问题描述】:

我正在尝试找出最好的方法

  1. 获取当前日期/时间(date('Y-m-d H:i:s') 最好吗?)
  2. 从 SQL 中获取数据库日期
  3. 检查当前日期 (#1) 是否介于从数据库中提取的日期和之后 5 小时之间

我是 php 的新手。

【问题讨论】:

    标签: php sql datetime


    【解决方案1】:

    从 MySQL 中提取你想要的日期

      SELECT myDateCol FROM myTable WHERE ...
    

    将其转换为 UNIX 时间戳

    $db_timestamp = strtotime($db_row['myDateCol']);
    

    检查数据库中的日期是否在过去 5 小时内

    if ($db_timestamp >= strtotime('-5 hours')) echo 'DB date is within last 5 hours';
    

    【讨论】:

      【解决方案2】:

      使用 PHP 的 DateTime 类:

      $start = new DateTime("2009/09/17 18:52:31");
      //Your SQL request should set this
      
      $end = date_add($start,new DateInterval("PT5H"))
      
      $now = new DateTime();
      
      if($start<$now && $now<$end)
      {
      //etc
      }
      

      【讨论】:

      • 他说的是五小时,不是五分钟。
      • 实际上,M 代表月份。不过很好看。我不是故意的。再次复制并粘贴手指敲击...
      猜你喜欢
      • 1970-01-01
      • 2015-07-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-09-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多