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

取得经过认证的用户

当用户通过认证后,有几种方式取得用户实例。

首先, 你可以从 Auth facade 取得用户:

<?php namespace AppHttpControllers;

use IlluminateRoutingController;

class ProfileController extends Controller {

    /**
     * Update the user"s profile.
     *
     * @return Response
     */
    public function updateProfile()
    {
        if (Auth::user())
        {
            // Auth::user() returns an instance of the authenticated user...
        }
    }

}

第二种,你可以使用 IlluminateHttpRequest 实例取得认证过的用户:

<?php namespace AppHttpControllers;

use IlluminateHttpRequest;
use IlluminateRoutingController;

class ProfileController extends Controller {

    /**
     * Update the user"s profile.
     *
     * @return Response
     */
    public function updateProfile(Request $request)
    {
        if ($request->user())
        {
            // $request->user() returns an instance of the authenticated user...
        }
    }

}

第三,你可以使用 IlluminateContractsAuthAuthenticatable contract 类型提示。这个类型提示可以用在控制器的构造方法,控制器的其他方法,或是其他可以通过服务容器 解析的类的构造方法:

<?php namespace AppHttpControllers;

use IlluminateRoutingController;
use IlluminateContractsAuthAuthenticatable;

class ProfileController extends Controller {

    /**
     * Update the user"s profile.
     *
     * @return Response
     */
    public function updateProfile(Authenticatable $user)
    {
        // $user is an instance of the authenticated user...
    }

}