2007年10月6日 星期六

php中計算時間差的幾種方法

一個簡單的例子就是計算借書的天數,這需要php根據每天的日期進行計算,下面就來談談實現這種日期計算的幾種方法:
(1) 如果有數據庫就很容易了!若是MSSQL可以使用觸發器!用專門計算日期差的函數datediff()便可!
若是MYSQL那就用兩個日期字段的差值計算的計算結果保存在另一個數值型字段中!用時調用便可!
(2)如果沒有數據庫,那就得完全用php的時間日期函數!下面主要說明之:
例:計算1998年5月3日到1999-6-5的天數:
$enddate=mktime("0","0","0","6","5","1999");
//所得到的值為從1970-1-1到參數時間的總秒數:是整數.那麼 //下面的代碼就好編多了:
$days=round(($enddate-$startdate)/3600/24) ;
echo $days;
//days為得到的天數;
若mktime()那表示使用當前日期,這樣便可計算從借書日期至今的天數.

得到前一天的日期;
date("Y-m-d", mktime(0,0,0,date("m"), date("d")-1, date("Y")))
例如今天為 : 2009-07-22 執行後 為 2009-07-21

【下列文章您可能也有興趣】

沒有留言: