Сижу пишу скрипт, натолкнулся на такой вопрос...
Есть дата начала действия time(), период действия 6 месяцев
Как вычислить время окончания действия?
Логично представить 1 месяц в секундах умножить на период и прибавить к началу, но в месяце от 28 дней до 31 дней.
обычно, считается, что дата "через три месяца", это не через 91 день с четвертью а то же самое число, только месяц - на три вперед.
И, если ВНИМАТЕЛЬНО прочитать документацию к функции mktime, на которую есть ссылка в документации к функции функции time(), то можно узнать, как сделать требуемую операцию без лишних вычислений и извращений.