2015-03-25 3 views
0

У меня есть этот код foreach, и я хочу суммировать значения, которые он возвращает, может ли кто-нибудь помочь мне с этим, пожалуйста?PHP sum foreach loop results

foreach($timel->results() as $timel) { 

     $timeDiff = strtotime($timel->end_date) - strtotime($timel->start_date); 

     $hours = floor($timeDiff/3600); 
     $remainder = $timeDiff - $hours * 3600; 
     $formattedTime = sprintf('%02d', $hours) . gmdate(':i:s', $remainder); 
     echo $formattedTime, '<br>'; 
} 

Этот код выводит:

00:17:20

00:00:06

00:00:02

И я хочу суммируйте это значение, а затем выведите 00:17:28.

ответ

0

вы можете использовать что-то вроде:

<?php 

$totaltime = 0;  

foreach($timel->results() as $timel) { 

    $timeDiff = strtotime($timel->end_date) - strtotime($timel->start_date); 

    $totaltime += $timeDiff; 
} 

$hours = floor($totaltime/3600); 
$remainder = $totaltime - $hours * 3600; 
$formattedTime = sprintf('%02d', $hours) . gmdate(':i:s', $remainder); 

echo $formattedTime; 
+0

ТНХ мой друг, я использовал свой код, но он не работал, но сделал простое изменение и работал – Richard

+0

Ok, вы радушны – D3F

+1

Я надеваю Не знаю, почему ожидающее редактирования было отклонено одним человеком до сих пор. Он должен быть одобрен. ОП внес правильные изменения. –