2015-01-08 91 views
-1

试图找到空位总天投资物业数组的总和......获取循环

我从MySQL获得的信息把它变成一个环形阵列发现在不同的行日期之间的差值。

我能够返回每个“移出”和“移入”日期之间的差异,但无法获得总计。 下面的代码返回此...上属性#2014年1月25日和2014年1月27日之间

差7 = 2

差异与2014年11月23日上之间2014年11月3日属性#7 = 20

mysql_select_db($database_rent, $rent); 
    $query_RS_Vac = "SELECT Properties.PropId, Tenants.TenantId, Tenants.PropertyID,  Tenants.TenantAdress, Tenants.MoveIn, Tenants.MoveOut, Properties.P_GpNo FROM Properties, Tenants WHERE Tenants.PropertyID=Properties.PropId AND Tenants.TenantAdress = "7" 
    ORDER BY Tenants.TenantId "; 
    $result = mysql_query($query_RS_Vac) or die ("no query"); 
    $result_array = array();  
    while ($row = mysql_fetch_array($result)) { 
    $values = array($row['MoveIn'],$row['MoveOut'], $row['TenantAdress']); 
    array_push($result_array,$values); 
    } 
    $it = 0; 
    $PropId=$values[2]; 
    while($it<count($result_array)){ 
    // if neither begin and end are NULL 
    if($result_array[$it][1]!= null & $result_array[$it+1][0]!=null){ 
     $datetime1 = new DateTime($result_array[$it][1]); 
     $datetime2 = new DateTime($result_array[$it+1][0]); 
     $diff = $datetime1->diff($datetime2); 
     $days2= $diff->format("%a"); 
     echo "Difference between ".$datetime1->format("Y-m-d")." and ".$datetime2->format("Y- m-d")." on Property# " . $PropId . " = " . $days2 . "<br/>"; 
    } 
    $it++;  
    } 

+0

如果你只是想把它们加到数组中,然后在完成时使用array_sum。 –

+1

根本没有运行总数。你可能想要'$ total + = $ days2'什么的。 –

回答

0

2种方式

$total_days[]=$days2; 
array_sum($total_days); 

$total_days+=$days2; 
+0

感谢Funk Doc $ total_days + = $ days2;诀窍。 array_sum();只是重复了我已有的东西 – mark2326