确认订购状态
要确认用户是否订购了你的应用,使用 subscribed 方法:
if ($user->subscribed())
{
//
}
subscribed 方法很适合用在 路由中间件:
public function handle($request, Closure $next)
{
if ($request->user() && ! $request->user()->subscribed())
{
return redirect('billing');
}
return $next($request);
}
你可以使用 onTrial 方法,确认用户是否还在试用期间:
if ($user->onTrial())
{
//
}
要确认用户是否曾经订购但是已经取消了服务,可以使用 cancelled 方法:
if ($user->cancelled())
{
//
}
你可能想确认用户是否已经取消订单,但是服务还没有到期。例如,如果用户在三月五号取消了订购,但是服务会到三月十号才过期。那么用户到三月十号前都是有效期间。注意, subscribed 方法在过期前都会返回 true 。
if ($user->onGracePeriod())
{
//
}
everSubscribed 方法可以用来确认用户是否订购过应用程序里的方案:
if ($user->everSubscribed())
{
//
}
onPlan 方法可以用方案 ID 来确认用户是否订购某方案:
if ($user->onPlan('monthly'))
{
//
}