|
|
|
| Допустим есть значение разницы 2 дат в UTC формате
<?php
$rasniza = 43720;
?>
|
Как мне его вывести в формате "X дней X часов X минут X секунд"
Т.к. $rasniza может быть и 10 и 10000 нужно, если дней содержится 0, то "0 дней" вообще не выводить.
Весь день бьюсь - чет не получается. Пробовал и sprintf и strftime - получается фигня какая-то.
Подскажите, кто может, Please. | |
|
|
|
|
|
|
|
для: ddhvvn
(02.01.2007 в 13:54)
| | Жду ответа | |
|
|
|
|
|
|
|
для: ddhvvn
(02.01.2007 в 13:54)
| | $rasniza в секундах? | |
|
|
|
|
|
|
|
для: cheops
(02.01.2007 в 15:02)
| | Да! | |
|
|
|
|
|
|
|
для: ddhvvn
(02.01.2007 в 15:03)
| |
<?php
$razniza = 43720; $res = "";
$unit = $razniza % 60; $razniza = ($razniza-$unit)/60;
if($unit) $res = "$unit секунд $res";
$unit = $razniza % 60; $razniza = ($razniza-$unit)/60;
if($unit) $res = "$unit минут $res";
$unit = $razniza % 24; $razniza = ($razniza-$unit)/24;
if($unit) $res = "$unit часов $res";
$unit = $razniza % 365; $razniza = ($razniza-$unit)/365;
if($unit) $res = "$unit дней $res";
$unit = $razniza;
if($unit) $res = "$unit лет $res";
echo $res;
?>
|
| |
|
|
|
|
|
|
|
для: ddhvvn
(02.01.2007 в 13:54)
| | Можно поступить следующим образом
<?php
function format_second($second)
{
$day = floor($second/86400);
$second -= $day*86400;
$hour = floor($second/3600);
$second -= $hour*3600;
$minute = floor($second/60);
$second -= $minute*60;
echo "$day дней $hour часов $minute минут $second секунд";
}
format_second(43720);
?>
|
| |
|
|
|
|
|
|
|
для: cheops
(02.01.2007 в 15:20)
| | Алгоритм понятен. Спасибо. | |
|
|
|