Проблемы с php strtotime, давая неправильные значения? - PullRequest
1 голос
/ 08 марта 2010

У меня есть этот код:

$date = '2010-03-08 8:10:20'
$new_date  = date('Y-m-d H:i:s', strtotime($date . " +1 month"));
echo $new_date;

Кстати, я уже установил

date_default_timezone_set('Europe/London');

И результат: 5 апреля 2010, 3 дня пропали. Почему это случилось? Я слышал, что в strtotime есть ошибки? Если это так, как получить правильный? Я имею в виду, есть ли другой способ заменить это:

$new_date  = date('Y-m-d H:i:s', strtotime($date . " +1 month")); // or +2, +3... +100

Ответы [ 2 ]

1 голос
/ 08 марта 2010

Использование функции mktime:

$date = date ( 'Y-m-d H:i:s', mktime ( arguments ) + one_month_epoch_value) ) ; 
0 голосов
/ 08 марта 2010

Я делаю это:

date_default_timezone_set('Europe/London');

$date = '2010-03-08 8:10:20';
$new_date  = date('Y-m-d H:i:s', strtotime($date . " +1 month"));
echo $new_date;

и получаю

2010-04-08 08:10:20

, поэтому у вас есть другая проблема.

...