牛骨文教育服务平台(让学习变的简单)

确认订购状态

要确认用户是否订购了你的应用,使用 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"))
{
    //
}