Как складывать и вычитать время?
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