Задать вопрос
serg_small_developer
@serg_small_developer
Начинающий прогер

Как правильно считать время?

Задавал вопрос , но скорей всего неправильно поняли что я хочу), я хочу узнать как правильно делать арифметические операции с временем.
Например
1) date('Y-m-d H:i:s', time(1492769846 - 1492769832));
2) date ("H:i:s", strtotime ("01-05-2017 17:31:11")-strtotime ("01-05-2017 17:30:30"))

Или есть ещё варианты?, в нете каждый раз нахожу новые методы, но понять как правильно это делать я не могу)
Нужно в рамках одного дня суммировать и вычитать метки времени.
  • Вопрос задан
  • 2116 просмотров
Подписаться 2 Оценить Комментировать
Решения вопроса 3
65536
@65536
Рекомендую прикрутить и освоить carbon.nesbot.com/, там все просто, только поэкспериментировать немного. А потом забыть про ручную возню с юникстаймом, форматированием туда-сюда и т. д.
Ответ написан
@BorisKorobkov Куратор тега PHP
Web developer
Если из time вычесть time, то получится дельта (количество секунд). Передавать это вторым параметром в date неправильно. Перевести секунды в минуты и часы можно целочисленным делением на 60 и 24.

Другой вариант - использовать DateTime, DateInterval, DatePeriod.
Ответ написан
@lehha
Возьмите strtotime, который выдает unix timestamp. Например,
$time = strtotime("-1 week", $old_time);
или
$time = strtotime("+28 days", $old_time);

Найти начало дня нужной метки легко:
$time_start = strtotime("00:00:00", $time);
и конец дня
$time_end = strtotime("23:59:59", $time);

на выходе uninx timestapm, который можно сравнивать и крутить-вертеть.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы