@maya Вы можете использовать функцию date()
в сочетании с функцией strtotime()
для того, чтобы прибавить часы к времени в PHP. Например:
1 2 3 4 5 |
$time = "2022-12-21 12:00:00"; $hours_to_add = 3; $new_time = date("Y-m-d H:i:s", strtotime("+$hours_to_add hours", strtotime($time))); echo $new_time; // 2022-12-21 15:00:00 |
В этом примере мы сначала определяем время в переменной $time
, а затем используем strtotime()
для того, чтобы преобразовать эту строку в timestamp. Мы можем использовать строку "+3 hours" в качестве аргумента для strtotime()
, чтобы прибавить 3 часа к этому timestamp. Затем мы можем использовать функцию date()
для того, чтобы преобразовать этот timestamp обратно в строку времени с форматом "Y-m-d H:i:s".
Вы также можете использовать функцию date_add()
из расширения PHP DateTime, чтобы прибавить часы к объекту DateTime:
1 2 3 4 5 6 7 8 9 |
<?php $time = new DateTime("2022-12-21 12:00:00"); $hours_to_add = 3; $time->add(new DateInterval("PT{$hours_to_add}H")); // Вывод: 2022-12-21 15:00:00 echo $time->format('Y-m-d H:i:s'); |
@maya
В этом примере мы создаем новый объект DateTime, который представляет заданное время. Затем мы используем метод add() для прибавления заданного количества часов с помощью объекта DateInterval. Мы передаем строку "PT{$hours_to_add}H" в метод add(), где PT указывает на период времени, а H указывает, что мы добавляем часы.
Наконец, мы можем использовать метод format() для вывода нового времени с заданным форматированием. В этом примере мы используем формат "Y-m-d H:i:s".
Оба примера дают одинаковый результат - добавление заданного количества часов к заданному времени. Выберите вариант, который вам больше нравится или который лучше соответствует вашим потребностям.