2011-06-15 88 views
1

我有下一个问题: 我有一个名为“last_payment”的'datetime'字段的表,我想要做的事情是向用户显示剩余多少天给他们的订阅(它的每月订阅)所以基本上如果last_payment中的值是“2011-06-10 12:28:11”,而今天它的15/06/2011我希望它显示他们还剩25天。打印订阅剩余多少天?

我有当前的代码,无论多少次我玩它都无所谓当它试图从MySQL中获取数据但它工作时,我做了一个“mktime()”函数..:

$today = time(); 
$row_ct = mysql_fetch_array($result_ct); 

//Subscription Counting Funcrion for Clients 
$cdate_c = mktime(0, 0, 0, 12, 31, 2009, 0); 
$difference_c = $today - $cdate_c; 
if ($difference_c < 0) { $difference_c = 0; } 

下不工作:

$cdate_c = mktime($row_ct["last_payment"]); 
$cdate_c = mktime(strtotime($row_ct["last_payment"])); 
$cdate_c = date(strtotime($row_ct["last_payment"])); 

一些帮助?

回答

1

尝试

$cdate_c = strtotime($row_ct["last_payment"]);

+1

感谢伙计它的工作。 – Ricardo 2011-06-15 20:38:17

1

mktime接受7个参数,并返回无效的参数错误。你只给它1,所以这就是为什么这些不工作:

$cdate_c = mktime($row_ct["last_payment"]); 
$cdate_c = mktime(strtotime($row_ct["last_payment"])); 

date接受的格式(你希望你的时间来寻找),以及一个可选的时间戳。这就是为什么你没有为此得到什么:

$cdate_c = date(strtotime($row_ct["last_payment"])); 

试试这个相关文章:How to calculate the difference between two dates using PHP?

您的日期转换为时间戳,计算秒之差,进而计算出每天的秒数确定差异的天数。