|
Динозавр
Регистрация: 10.01.2008
Сообщений: 2,841
С нами:
9649706
Репутация:
3338
|
|
2 Mixon
Тест (могут быть некоторые неточности с округлениями и если время больше суток - не стал заморачиваться, сам поймешь, что делать):
PHP код:
<?php
$c=18224; // Введите кол-во секунд
echo "$c\n";
if ($c<60) echo "0 hours 0 minutes " .round($c,0) . " seconds\n";
if ($c>=3600){
$c = $c/3600;
$h = explode('.',$c);
$minutes1 = substr($h[1],0,2);
$sec1 = substr($h[1],2,2);
if (substr($minutes1,0,1)>5) {$minutes=substr($minutes1,0,2)*6;$minutes = round($minutes,0);}
else {$minutes=substr($minutes1,0,2)*0.6;$minutes = round($minutes,0);}
if (substr($sec1,0,1)/10>5) {$sec=substr($sec1,0,2)*6;$sec = round($sec,0);}
else {$sec=substr($sec1,0,2)*0.6;$sec = round($sec,0);}
echo $h[0]." hours ". $minutes." minutes " .$sec . " seconds\n";
}
if ($c>=60 && $c<3600) {
$c = $c/60;
$a = explode('.',$c);
if (substr($a[1],0,1)>5) {$sec=substr($a[1],0,2)*6;$sec = round($sec,0);}
else {$sec=substr($a[1],0,2)*0.6;$sec = round($sec,0);}
echo "0 hours ". $a[0]." minutes " .$sec . " seconds\n";
}
?>
Ну и рабочий код для измерения времени работы скрипта в нужном тебе формате:
PHP код:
<?php
$start = microtime(true);
/* тут мы делаем что-то, чтобы прошло какое-то время */
While($a<100000000){
$a++;
}
/* Кончили делать что-то */
$end = microtime(true);
echo "Time start:" . date('H:i:s',$start)."\n";
echo "Time end:". date('H:i:s',$end)."\n";
$c = round(($end - $start),0);
if ($c<60) echo "0 hours 0 minutes " .round($c,0) . " seconds\n";
if ($c>=3600){
$c = $c/3600;
$h = explode('.',$c);
$minutes1 = substr($h[1],0,2);
$sec1 = substr($h[1],2,2);
if (substr($minutes1,0,1)>5) {$minutes=substr($minutes1,0,2)*6;$minutes = round($minutes,0);}
else {$minutes=substr($minutes1,0,2)*0.6;$minutes = round($minutes,0);}
if (substr($sec1,0,1)/10>5) {$sec=substr($sec1,0,2)*6;$sec = round($sec,0);}
else {$sec=substr($sec1,0,2)*0.6;$sec = round($sec,0);}
echo $h[0]." hours ". $minutes." minutes " .$sec . " seconds\n";
}
if ($c>=60 && $c<3600) {
$c = $c/60;
$a = explode('.',$c);
if (substr($a[1],0,1)>5) {$sec=substr($a[1],0,2)*6;$sec = round($sec,0);}
else {$sec=substr($a[1],0,2)*0.6;$sec = round($sec,0);}
echo "0 hours ". $a[0]." minutes " .$sec . " seconds\n";
}
?>
Задачка на самом деле оказалась не такой уж и простой 
Последний раз редактировалось Pashkela; 30.01.2009 в 00:55..
|