2012-07-31 97 views
0

检查未来日期是否与当前日期相同?我想...比较(接近)未来日期到当前日期,如何

$Current_Date=time(); // today - 31st July 
$Future_Date =mkdate(~1st aug~); // tomorrow - 1st Aug 
if(("m",$Future_Date)>date("m",$Current_Date)) 
    echo date("j",$Current_Date) . "SAME MONTH!!"; 
else 
    echo date("j",$Current_Date) . date("m",$Current_Date); 

但是说,如果$Future_Date〜7月1日,明年它仍然显示“同一月”。

我正在做一种倒计时的事情,它计算了到$Future_Date的剩余时间。我想只显示日期是否在同一个月,但如果日期在下一个月或任何后一个月,则与日期一起显示。

回答

1

您可以在PHP中使用的dateinterval类这样的:http://php.net/manual/en/class.dateinterval.php,或者您也可以比较上一年还有:

if(("m",$Future_Date)==date("m",$Current_Date) && ("Y",$Future_Date)==date("Y",$Current_Date)) 
    echo date("j",$Current_Date) . "SAME MONTH!!"; 
else 
    echo date("j",$Current_Date) . date("m",$Current_Date); 
+0

'dateinterval'是完美的。我不知道它。取决于'mkdate()'的输入格式,我有相当多的东西。有没有办法在这个声明中添加小时:'$ Future = new DateTime('2010-01-01');'edit:just hours。 – laggingreflex 2012-07-31 14:09:42

+0

[没关系](http://www.php.net/manual/en/datetime.formats.compound.php) – laggingreflex 2012-07-31 14:18:06

相关问题