Показать сообщение отдельно

  #2  
Старый 04.03.2008, 14:55
Naydav
Постоянный
Регистрация: 30.12.2006
Сообщений: 434
Провел на форуме:
849583

Репутация: 210
По умолчанию

PHP код:
<?php

function calc_period($date_start$date_finish) {
                
$st explode('-'date('d-m-Y-H-i-s'$date_start));
                
$fin explode('-'date('d-m-Y-H-i-s'$date_finish));

                if ((
$seconds $fin[5] - $st[5]) < 0) {
                        
$fin[4]--;
                        
$seconds += 60;
                }

                if ((
$minutes $fin[4] - $st[4]) < 0) {
                        
$fin[3]--;
                        
$minutes += 60;
                }

                if ((
$hours $fin[3] - $st[3]) < 0) {
                        
$fin[0]--;
                        
$hours += 24;
                }

                if ((
$days $fin[0] - $st[0]) < 0) {
                        
$fin[1]--;
                        
$days date('t'mktime(100$st[1], $st[0], $st[2])) - $st[0] + $fin[0];
                }

                if ((
$months $fin[1] - $st[1]) < 0) {
                        
$fin[2]--;
                        
$months += 12;
                }

                
$years $fin[2] - $st[2];
                
                return array(
$seconds$minutes$hours$days$months$years);
}


// Примеры использования

$date_finish strtotime("1-03-2008");
$date_start strtotime("31-01-2008");

$result calc_period($date_start$date_finish);

echo 
'C ' date('h:i:s d-m-y'$date_start) . ' по 'date('h:i:s d-m-y'$date_finish) .' прошло ' $result[0] . ' секунд ' $result[1]. ' минут ' .$result[2] . ' часов ' .$result[3] . ' дней ' $result[4] . ' месяцев ' $result[5] . ' лет <br>';

?>
 
Ответить с цитированием