我正在尝试做一个基于订阅的系统,一旦一个人注册他/她可以选择一个1/3/6个月的套餐并支付它,一旦支付成功,就会添加一个日期戳,这个日期戳是根据包裹,即如果包裹是今天购买的,它将是提前 3 个月或 1 个月或其他日期的同一天。
我在创建解决此问题的函数时遇到问题。
假设您的套餐订阅期限为从现在起 3 个月。你可以像这样得到那个日期:
echo date('Y-m-d H:i:s', strtotime('+3 months', time()));
这对我有用,谢谢大家!
$dateNow = new DateTime();
$dateAhead = $dateNow->add(DateInterval::createFromDateString('3 months'));
print $dateAhead->format('Y-m-d');
/**
* @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()));
}