以UTC格式查询最近1小时创建的记录

时间:2017-03-22 09:41:32

标签: php datetime

记录有一个createdDateTime标志,格式为“ 2016-09-05T11:39:12Z

我想过滤掉过去60分钟内创建的记录。我如何在PHP中完成此任务?

这是我正在查询数据的休息api。

我的请求看起来有点像

$filter=createdDateTime gt datetime'2016-09-05T11:39:12Z'
如上所述,

createdDateTime采用UTC格式。我只想要GT datetime' UTC格式的最后1小时时间戳'

使用以下命令,我可以生成存储格式的时间戳。

gmdate("Y-m-d\TH:i:s\Z");

1 个答案:

答案 0 :(得分:0)

date_default_timezone_set('UTC');  // this may not be necessary for your case

$createdDateTime='2016-09-05T11:39:12Z';  // sample from OP
if(strtotime($createdDateTime)>=strtotime("-1 hour")){  // compare Unix timestamps
    echo "filter out: $createdDateTime";
}else{
    echo "process: $createdDateTime";
}
// output: "process: 2016-09-05T11:39:12Z"           <-- since stamp is >6 months old