php - 检查日期/时间是否小于提供的日期?

标签 php mysql datetime strtotime

我在 PHP 中实现以下内容,将此字符串存储在数据库中的“created_at”列:Wed, 17 Dec 2014 14:53:02 +1100

$created_at = date('r', $insta['created_time']);

现在我只想在 $created_at 超过特定日期时执行插入,例如:

if ($created_at > "Wed, 15 Dec 2014 00:00:00 +1100") { //insert in to db }

虽然这不起作用。我通常会使用 strtotime() 但不确定当数据设置为该格式时如何处理。此外,列类型为 varchar(255)

最佳答案

除了您的问题之外,您还需要将日期时间数据存储在日期时间列中。 Mysql为此有特定的功能和格式。但是,为了存储它需要采用 Y-m-d H:i:s 格式。这样做将为您省去很多麻烦。

关于您的问题,如果您使用的是 PHP 5.2+ 版本,则可以使用 PHP 的 DateTime 类。

$compareTime = new DateTime('2014-12-15 00:00:00'); //new datetime object//
$createdTime = new DateTime($created_at); //converts db into datetime object//

if ($createdTime > $comparedTime) { ..insert into DB.. }; //compare them//

关于php - 检查日期/时间是否小于提供的日期?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27518163/

相关文章:

php - 从 MySQL 数据库中提取日期删除时间

php - 带有 PHP 文件的 JQuery AJAX 缓存

mysql - 使用数据库 MySQL 中的值填充新列

mysql - 查询花费太多时间并影响性能

java - 日期时间字符串 + TimeZone

javascript - 日期比较无法正常工作

php - 将 mySQL 数据库的行链接到引用的页面

php/数据库导致性能问题

mysql - 主索引和辅助索引到底有什么区别?

c# - 日期时间.ParseExact : "String not recognised as a valid DateTime"