Laravelの認証機能を少し触ってみます。
使い方
認証に必要なビューとルーティングを設定するコマンドが用意されているようなので、今回はそちらを使ってみます。
Laravelをインストール後、下記コマンドを実行します。
php artisan make:auth
下記ファイルが生成・変更されました。
Created View:resources/views/auth/login.blade.php Created View:resources/views/auth/register.blade.php Created View:resources/views/auth/passwords/email.blade.php Created View:resources/views/auth/passwords/reset.blade.php Created View:resources/views/auth/emails/password.blade.php Created View:resources/views/layouts/app.blade.php Created View:resources/views/home.blade.php Created View:resources/views/welcome.blade.php Installed HomeController. Updated Routes File.
次にデータベースを用意して、.envファイルの下記部分を書き換えます。
DB_DATABASE=データベース名 DB_USERNAME=ユーザー名 DB_PASSWORD=パスワード
下記コマンドを実行して、認証用のテーブルを作成します。
php artisan migrate
migrationファイルはLaravelであらかじめ用意されています。
これで一通りの作業は完了したので、下記コマンドを実行してhttp://localhost:8000/にアクセスしてみます。
php artisan serve
下記のように表示されました。
右上のRegisterからユーザーの登録を行ってみます。

ユーザー登録画面(http://localhost:8000/register)が表示されました。
各項目を入力して、Registerをクリックします。

http://localhost:8000/に遷移しましたが、右上に先ほど入力したユーザー名が表示されているのが確認できます。

右上のユーザー名をクリックすると、Logoutボタンが表示されます。
一旦Logoutをクリックしてログアウトします。

最初の表示に戻りました。
次はログインを行ってみます。

先ほど登録したユーザー情報を入力して、Loginをクリックします。

http://localhost:8000/homeに遷移して、以下のような表示になりました。

HomeController.phpを修正して、認証済みユーザーの情報を取得してみます。
app\Http\Controllers\HomeController.php
<?php
namespace App\Http\Controllers;
use App\Http\Requests;
use Illuminate\Http\Request;
use Auth;
class HomeController extends Controller
{
/**
* Create a new controller instance.
*
* @return void
*/
public function __construct()
{
$this->middleware('auth');
}
/**
* Show the application dashboard.
*
* @return \Illuminate\Http\Response
*/
public function index()
{
// ログインしている場合
if (Auth::check()) {
// 認証済みユーザーの情報取得
$user = Auth::user();
// ユーザー名の取得
$username = $user->name;
return var_dump($username);
}
}
}
ログインしている場合、http://localhost:8000/homeでユーザー名が出力されるのが確認できました。
![]()
【参考サイト】
コメントが承認されるまで時間がかかります。