Я пытаюсь создать систему, основанную на подписке, как только человек регистрируется, он / она может выбрать пакет на 1/3/6 месяцев и заплатить за него, как только платеж завершен, добавляется отметка даты, эта отметка даты в зависимости от пакета, т. е. если пакет приобретен сегодня, он будет в тот же день на 3 месяца вперед или на 1 месяц или что-то еще.
У меня проблемы с созданием функции, которая решает эту проблему.
Допустим, ваша подписка на пакет действует в течение 3 месяцев. Вы можете получить эту дату следующим образом:
echo date('Y-m-d H:i:s', strtotime('+3 months', time()));
/**
* @param $month your package subscription is for $month months from now
* @param string $format
* @return bool|string
*/
function subscription($month, $format = 'Y-m-d H:i:s')
{
return date($format, strtotime('+' . $month . ' months', time()));
}
Это сработало для меня, спасибо всем!
$dateNow = new DateTime();
$dateAhead = $dateNow->add(DateInterval::createFromDateString('3 months'));
print $dateAhead->format('Y-m-d');