我看过这个问题,但时间格式不同
我Tue, 11 Sep 2012 17:38:09 GMT
在$pubDate
变量中有以下日期格式
我想$pubDate
与当前日期和时间进行比较,看看是否Tue, 11 Sep 2012 17:38:09 GMT
在最后 10 分钟内
编辑:
我努力了
//get current time
strtotime($pubDate);
time() - strtotime($pubDate);
if((time()-(60*10)) < strtotime($pubDate)){
//if true increase badge by one
$badge = $badge + 1;
}
它发出警告:依赖系统的时区设置是不安全的。您需要使用 date.timezone 设置或 date_default_timezone_set() 函数。如果您使用了这些方法中的任何一种,但仍然收到此警告,您很可能拼错了时区标识符。我们在第 26 行的 /Users/xxxxx/Desktop/xxxx/xxxx/xxxx.php 中为 'EDT/-4.0/DST' 选择了 'America/New_York'
编辑:
我已经date_default_timezone_set('America/New_York');
在我的 php 中添加了行,现在
$inDate = DateTime::createFromFormat( $format, $pubDate);
$postDate = new DateTime();
$diff = $inDate->diff( $postDate);
// If the total number of days is > 0, or the number of hours > 0, or the number of minutes > 10, then its an invalid timestamp.
if( $diff->format( '%a') > 0 || $diff->format( '%h') > 0 || $diff->format( '%i') > 10) {
die( 'The timestamps differ by more than 10 minutes');
}
工作没有警告,谢谢大家