Intereting Posts
PHP Почему моя функция дважды возвращает результат массива с разными ключами? Ошибка 508 – Достигнут лимит ресурсов (сайт php + mysql + jquery) Преобразование даты в формате PHP PHP и MySQL: количество возвращенных строк почему этот код добавляет две точки каждый раз, когда выполняется Как использовать веб-службы GeoNames с помощью PHP Сменил ли Facebook sharer.php больше нет подробных параметров? Как создать файл с помощью функции PHP fopen () с кодировкой UTF 16? PHP – изменение размера изображения на сервере до загрузки браузером PHP: я получаю совершенно пустую страницу, я не знаю, как отлаживать это в PHP Расширение CI_Controller Как использовать Composer для автозагрузки классов извне поставщика? Нечетный эффект прозрачности при слиянии двух .png с прозрачностью в PHP-GD загрузить ход с последующей обработкой Имеет ли много аргументов if ухудшение скорости рендеринга php?

Как конвертировать дату в timestamp, добавить 6 часов и преобразовать его обратно в дату на PHP?

как добавить 6 часов в эту строку?

$ parent = "2011-08-04 15:00:01";

Я думаю, что лучший способ – преобразовать его в timestamp, добавить 21600 секунд, а затем преобразовать его обратно в дату.

Как это сделать?

Заранее спасибо.

Возможно, вы ищете функцию http://www.php.net/manual/en/function.strtotime.php

$timestamp = strtotime("2011-08-04 15:00:01"); $timestamp += 6 * 3600; echo date('Ymd H:i:s', $timestamp); 
 $sixhours_from_parent = strtotime($parent) + 21600; $sixhours_date = date('Ymd H:i:s', $sixhours_from_parent); 
 <?php $parent = "2011-08-04 15:00:01"; $parentTime = strtotime($parent); $later = strtotime("+6 hours", $parentTime); echo date('Ymd H:i:s', $later); ?> 
 date('Ymd H:i:s', strtotime($parent) + 21600); 

Похоже на значение timestamp / datetime из SQL. Вы можете использовать для этого

 SELECT datefield + INTERVAL 6 HOUR 

Для PHP> 5.3 вы можете использовать класс DateInterval для объекта DateTime , который, по моему мнению, является самым простым способом справиться со сложностью вычислений времени. Поэтому в вашем случае вы можете сделать что-то вроде этого:

 $time = new \DateTime("2011-08-04 15:00:01"); $time->add(new \DateInterval('PT6H')); //add six hours echo $time->format('Ymd H:i:s'); 

ссылка