Сервер, на котором я размещен, размещен на PHP5.12.14, и у меня есть ошибка при запуске объекта DateTime из PHP5.3
# DateTime::add — Adds an amount of days, months, years, hours, minutes and seconds to a DateTime object $date = new DateTime($item_user['mem_updated']); # add a day to the object $date -> add(new DateInterval('P1D'));
Ошибка,
Fatal error: Call to undefined method DateTime::add() in /homepages/xxx.php on line xx
Итак, я ищу другие решения, а не придерживаться объекта DateTime PHP5.3. Как я могу написать код для замены кода выше?
в основном у меня есть данные даты и времени (например, 2011-01-21 02:08:39
) из базы данных mysql, и мне просто нужно добавить 1 день или 24 часа к этой дате / времени, а затем передать ее в ниже,
$time_togo = time_togo($date -> format('Ymd H:i:s'));
Благодарю.
strtotime будет работать
$timestamp = strtotime($item_user['mem_updated']); $time_togo = date("Ym=d H:i:s", strtotime("+1 Day", $timestamp));
Вот пример:
$date = date('Ymd H:i:s'); $new_tstamp = strtotime($date.'+1WEEK'); $new_date = date('Ymd H:i:s', $new_tstamp);
Другими словами, strtotime позволяет использовать выражения даты, такие как +1DAY
, +1MONTH
и так далее.
Вышеуказанное будет работать для строки даты (например: 2010-01-01). Если ваша исходная дата – временная метка Unix, вы все равно можете использовать strtotime
, хотя несколько иначе:
$new_tstamp = strtotime('+1WEEK', $timestamp);