Если вы извлекаете обе даты из базы данных MySQL, мне всегда было проще преобразовать их в целочисленный формат UnixDateTime во время запроса SQL. С ними гораздо проще работать в этом формате.
Ваш запрос будет выглядеть примерно так:
SELECT *, UNIX_TIMESTAMP(date1) date1_u, UNIX_TIMESTAMP(date2) as date2_u from mytable
Я всегда считал, что гораздо лучше сделать это, чем получать даты в виде строк, а затем связываться с неуклюжими функциями обработки даты в PHP.
Тем не менее, класс даты намного лучше в PHP5.3 - он даже имеет функции добавления / вычитания даты, которые также решат вашу проблему намного лучше, чем strtotime () ... при условии, что вы используете PHP 5.3.
Надеюсь, это поможет. Я знаю, что это не дает прямого ответа на вопрос!