PHP:使用strotime的问题

PHP:使用strotime的问题,php,Php,我想过滤我的输出: 07-02-13 20:08:41 test11@gmail.com 07-02-13 20:09:41 test11@gmail.com 07-02-13 20:21:25 hottie@gmail.com 07-02-13 20:56:51 ugly@gmail.com 07-02-13 21:42:37 selma532@gmail.com 07-02-13 22:09:11 blalbla421@gmail.com 我想过滤我的输出,所以在2

我想过滤我的输出:

07-02-13 20:08:41   test11@gmail.com
07-02-13 20:09:41   test11@gmail.com
07-02-13 20:21:25   hottie@gmail.com
07-02-13 20:56:51   ugly@gmail.com
07-02-13 21:42:37   selma532@gmail.com
07-02-13 22:09:11   blalbla421@gmail.com
我想过滤我的输出,所以在2分钟内出现的电子邮件必须做些什么。这是我迄今为止的“过滤代码”。但它不起作用。我做错了什么

strtotime('-2 minutes"', strtotime(date('d-m-y H:i:s', $filter['created'])

问题是您的日期格式不明确。
07-02-13
是指2013年2月7日(即今天)还是指2013年7月2日(美国标准格式),还是指2007年2月13日(大端格式)还是什么

我建议您重写代码,使其以big-endian格式生成时间戳,
那就是
Y-m-dh:i:s
。在这种格式中,您可以将它们作为字符串进行比较,因此您只需执行以下操作:

$two_minutes_ago = date("Y-m-d H:i:s",strtotime("-2 minutes"));
if( $value_to_test > $two_mintes_ago) {
    do_something();
}

我试过你的方法,但没有成功。不是在过滤我在顶部发布的内容是什么
$filter['created']
?如果它包含时间戳,为什么要将其格式化为ambigous date fromat,以便将其转换回时间戳并减去2分钟?什么不起作用?你发布的代码并没有试图过滤任何东西…我也遇到了问题。我以MM-DD-YYYY的格式记录了一个日期,并创建了一个函数[我称之为rolex():)],这个函数使用strotime来获取一个unix时间戳,我用来删除MM和DD前面的0[日期('n-j-Y',$d_字符串);]。。。