Как складывать и вычитать время?

1. BIFF (05.08.2010 / 14:27)
Нужно выполнить сложение и вычитание времени:
Файл находится в PHP, но можно наверно и JavaScript'ом.

$_POST[timeserv] = date('H:i'); - время сервера
$_POST[timeraz] = $_POST[times] - $_POST[timevalue]; - разница между известными параметрами времени
$_POST[time] = $_POST[timeraz] + $_POST[timeserv]; - сумма разницы($_POST[timeraz] ) и временем сервера

Но это не работает, не вычитается и не складывает.

2. chiper (05.08.2010 / 14:40)
Лучше используй функцию time

3. Azzido (05.08.2010 / 14:41)
функция date возвращает данные в формате string, мтематические операции же нужно проводить над числами, проще всего в формате timestamp, то есть нужную дату получаем функцией mktime и далее оперируем с ней, соответственно и другие слагаемые/вычитаемые должны быть в формате timestamp

4. BIFF (05.08.2010 / 14:44)
ДИкиЙ Ко_ОтЭ (5 Августа 2010 / 14:40)
Лучше используй функцию time
А зачем мне число секунд от начала unix эпохи? меня интересуют только часы и минуты.

5. KOZZ (05.08.2010 / 14:49)
strtotime() + date()

6. BIFF (05.08.2010 / 16:32)
Почему когда я сделал вот так:
$dateTim1= $_POST[times];
$dateTim2= $_POST[timevalue];
//
$dateTime1=StrToTime($dateTim1);
$dateTime2=StrToTime($dateTim2);
$dateTime3=StrToTime($dateTim3);
$dateTime4=($dateTime1 - $dateTim2);
$_POST[time]=date("H:i",$dateTime4);

у меня $_POST[time] равен $_POST[times] - 1 минута?

7. BIFF (05.08.2010 / 16:42)
например $_POST[times]; равно 16:41
а $_POST[timevalue]; равно 16:46

При вычитании 2-го из первого должно быть так 00:05
но почему-то в базе данных записывается так 16:45

URL: https://visavi.net/topics/12313