2013-05-28 76 views
0

我的日期正在返回,如01/05/2013 12:44。如果此日期时间处于未来状态,如何检查php?如何检查日期格式是否在未来?

+0

你从哪里得到这个数据?来自用户? – gkalpak

+0

我无法用不同的方式格式化 – Nicola

+0

将日期转换为时间戳并比较 –

回答

0

您可以用该日期的UNIX时间戳表示比较时():

if (time() < strtotime("01/05/2013 12:44")) 
{ 
    // your time is greater than todays date 
} 

另一种方式

$time = strtotime(str_replace("/","-",$date)) 
if ($time > time()) 
{ 
    echo "$date is in the future." 
} 
+0

这个作品,谢谢,我会在10分钟内接受时,它让我 – Nicola

+0

:)谢谢你的欢迎 – Yogus

+0

我想我的日期时间格式转换成类似2013年5月30日晚上8点,但是当我做的strtotime的'回声( $ meetings [0] ['date'])'什么都不打印出来。为什么是这样?我确实尝试过格式化它,但它是在1-1-1970年推出的,所以我重复了这个价值。我也尝试了print_r。 – Nicola

0

从PHP手册使用mktime

实例伪代码:

$today  = mktime("today"); 
$your_date = mktime("..."); 

if ($your_date > $today) { 
    // it's in the future 
} 
0

转换为Unix时间,然后看它是否比当前时间越大。

<?php 
if(strtotime("01/05/2013 12:44") > time()) { 
//time is in the future. 
}else{ 
    //time is in the past 
} 
?> 
1

试试这个:

<?php 

$dt = '01/05/2013 12:44'; 
$nowdt = time(); 
$diff = strtotime($dt) - $nowdt; 
echo $diff; 
if($diff > 0){ 
echo (" your date is future date"); 
} else { 
    echo ("your date is is not future date"); 
} 
?> 
相关问题