如何从365每天减少1个数字


How to decrease 1 number every day from 365

我有一个问题,如何从365每减少一个数字。假设今天是我的号码365,它将在明天364更新,然后在第二天363更新362,直到号码应该是0。

$a=365;
mysql_query("update record set number='".$a."'");
?>

我无法为这个问题编写代码,请帮帮我。感谢您的大力帮助

如果您通过cron作业等每天运行一次此查询:

mysql_query("update record set number = (number - 1) WHERE number >= 0");

基于cron的答案的一种替代方法。

$now = new DateTime();
$start = DateTime::createFromFormat('Y-m-d','2013-12-3');//Start date of the countdown
$diff = $now->diff($start);
$a= max(365 - $diff->days,0);
update record set number = number - 1

倒计时查询应该是

update record 
set number = number - 1
where id = :id: -- use where clause if you need to identify particular record

但是,每天更新计数有点笨拙。如果您需要某个日期之前的天数,则最好只存储目标日期,然后在select中报告剩余天数:

select datediff(future_date, NOW())

这样你就不必每天更新。不需要cron作业。

试试这个:

$a=365;  
$number = $a - 1;
mysql_query("update record set number='".$number."'");