|
|
|
| Есть код:
$s1 = mktime(14, 0, 0, 11, 18, 2008); # 14:00
$s2 = mktime(13, 0, 0, 11, 18, 2008); # 13:00
$summ = $s1 - $s2;
echo "$s1 - $s2 = ".date("H:i:s", $summ);
|
Почему получаю: 1227006000 - 1227002400 = 04:00:00
Скрипт нужно запускать в Windows (что и делаю).
Должен быть 1 час, почему 4?
Я понимаю, что наше время +3, но как это учитывать программно? | |
|
|
|
|
|
|
|
для: Indemion
(18.11.2008 в 16:21)
| | функция date() не предназначена для формирования интервалов времени. Только для абсолютных моментов.
А поместить разность в переменную с названием $summ - сюрр. | |
|
|
|
|
|
|
|
для: Trianon
(18.11.2008 в 16:47)
| | >А поместить разность в переменную с названием $summ - сюрр.
Вначеле это была сумма - экспериментирую :))) Впрочем не важно.
Есть три конкретных значения, для которых я хочу получить конкретный результат.
$s1 = 1227006000 это количество секунд
$s2 = 1227002400 и это тоже
Далее отнимаю от одного значения другое и получаю конечный результат. Должен быть час, а выходит 4.
Иначе как получить данные о, скажем, времени работы скипта.
<?php
$time1 = time();
sleep(5);
$time2 = time();
$worktime = $time2 - $time1;
echo date("H:i:s", $worktime);
?>
|
Результат: 03:00:05.
Опять эти же 3 часа. Неужели из-за того, что у меня на работе скрипт под виндами запускается? | |
|
|
|
|
|
|
|
для: Indemion
(18.11.2008 в 17:06)
| | Меня вцелом интересует другое:
1. Есть две переменных со времнем.
1. 23:15:15
2. 12:35:25
Как получить сумму: n дней n часов n минут n секунд?
2. Есть 37220 секунд. Как преобразовать их в нормальное время формата: n дней n часов n минут n секунд? | |
|
|
|
|
|
|
|
для: Indemion
(18.11.2008 в 17:39)
| | точно так же, как Вы сделали бы это руками.
Поделить на 60 , взять остаток, еще раз поделить на 60 взять остаток. Вуаля.
date() писали не для этого. | |
|
|
|
|
|
|
|
для: Trianon
(18.11.2008 в 19:16)
| | Спасибо.
Я так и сделал, но в тайне надеялся, что у гуру знают более удобные методы :) | |
|
|
|