[英]number of records between two dates phpmysql
我有這段代碼來獲取兩個日期$date1
和$date2
之間的記錄
for ($i=$date1;$i<$date2;$i++){//BETWEEN THE TWO DATES
$count_rcvd=mysql_num_rows(mysql_query("select * from cards where Date_Rcvd='$i'"));
$count_collect=mysql_num_rows(mysql_query("select * from cards where Date_Collected='$i'"));
if($i==$date1){FOR THE FIRST DATE IN THE RANGE
$uncollected=mysql_num_rows(mysql_query("select * from cards where Status='AVAILABLE' and Date_Rcvd<='$i'"));
$balance=$uncollected;
}
else{//FOR CONSECUTIVE DATES AFTER DATE1
$uncollected=mysql_num_rows(mysql_query("select * from cards where Status='AVAILABLE' and Date_Rcvd<'$i'"));//previous days balance
$balance=$uncollected+$count_rcvd-$count_collect;
當我為$ i回聲時,回聲“”; 回聲$ i;
回顯“”; echo $ count_rcvd; 回顯“”; echo $ count_collect; 回顯“”; echo $ balance; 回顯“”;
我下面的日期遠遠超出了日歷日期
014-03-15 0 7 103
2014-03-16 0 3 100
2014-03-17 0 7 96
2014-03-18 0 9 94
2014-03-19 0 5 98
2014-03-20 15 6 112
2014-03-21 0 6 103
2014-03-22 0 1 108
2014-03-23 0 0 109
2014-03-24 0 8 101
2014-03-25 0 3 106
2014-03-26 0 0 109
2014-03-27 1 2 108
2014-03-28 0 0 110
2014-03-29 6 1 115
2014-03-30 0 0 116
2014-03-31 0 0 116
2014-03-32 0 0 116
2014-03-33 0 0 116
2014-03-34 0 0
問題是例如輸出日期超過31日。。。
要迭代日期,我建議您使用DateTime和DateTimeInterval類(請注意!最低PHP 5.3): http : //www.php.net/manual/fr/class.datetime.php
您可以在真實日歷后添加天/月: http : //www.php.net/manual/fr/datetime.add.php
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.