Laravel は、開発者が WEB アプリケーションを簡単に構築できるようにする多くの強力なツールと機能を提供する人気の PHP フレームワークです。中でもログイン機能の実装はアプリケーション開発において重要なステップです。この記事ではLaravelにログイン機能を実装する方法を紹介します。
Laravel は、PHP の依存関係管理ツールである Composer を通じてインストールできます。 Composer をインストールするには、次のコマンドを入力します。
curl -sS https://getcomposer.org/installer | php mv composer.phar /usr/local/bin/composer
インストールが完了したら、次のコマンドを使用して Laravel アプリケーションを作成します。
composer create-project --prefer-dist laravel/laravel projectname
Laravel の認証システムを使用する前に、データベースを設定する必要があります。次の例では、.env
ファイルを開き、データベース接続設定を変更します。
DB_CONNECTION=mysql DB_HOST=127.0.0.1 DB_PORT=3306 DB_DATABASE=mydatabase DB_USERNAME=root DB_PASSWORD=
次のコマンドを実行して、Laravel のユーザー認証システムを生成します。
php artisan make:auth
これにより、ユーザー登録、ログイン、ログアウトのための基本的なビューとコントローラーが作成されます。
次に、ユーザー モデルを作成する必要があります。Laravel がデフォルトで提供するユーザー モデルは AppUser
です。次のコマンドを使用して作成します。
php artisan make:model User
登録検証:
public function store(Request $request) { $this->validate($request, [ 'name' => 'required', 'email' => 'required|email|unique:users,email', 'password' => 'required|min:6|confirmed', ]); $user = User::create([ 'name' => $request['name'], 'email' => $request['email'], 'password' => bcrypt($request['password']), ]); Auth::login($user); return redirect()->route('dashboard'); }
ログイン検証:
public function login(Request $request) { $this->validate($request, [ 'email' => 'required|email', 'password' => 'required|min:6', ]); $credentials = [ 'email' => $request['email'], 'password' => $request['password'], ]; if (Auth::attempt($credentials)) { return redirect()->intended('dashboard'); } else { return redirect()->back()->withInput($request->only('email', 'remember')); } }
上記のコードでは、 try
メソッドはユーザーの資格情報を検証します。検証に合格すると、ユーザーのステータスがセッションを通じて保存され、Auth::check
メソッドを使用してユーザーが認証情報を確認できるかどうかを確認できます。ログインしています。
ミドルウェアは、アプリケーションのさらなる制御と保護を提供します。 Laravelには、ユーザーがログインしているかどうかを確認するためのミドルウェアなど、事前定義されたミドルウェアが多数あります。
認証ミドルウェアをアプリケーションに追加し、保護する必要があるルートに適用します。
Route::middleware(['auth'])->group(function () { Route::get('/dashboard', 'DashboardController@index')->name('dashboard'); });
Laravel では、次のことができます。アプリケーションに HTTPS の使用を簡単に強制します。
.env
に次の行を追加します。
APP_ENV=production APP_URL=https://example.com
次に、AppServiceProvider
クラスを開き、次の行を追加します。次の行:
public function boot() { if (config('app.env') === 'production') { URL::forceScheme('https'); } }
これにより、アプリケーションの URL リンクが強制的に HTTPS プロトコルに変換されます。
これまで、この記事では、Laravelのインストール、データベースの設定、ユーザー認証システムの生成、ユーザーの作成など、Laravelでログイン機能を実装する方法を紹介しました。モデル、登録とログイン認証、ミドルウェア、HTTPS の使用の強制。この記事で説明する手順を使用して Laravel のログイン機能を実装すると、より安全で機能が豊富なアプリケーションを構築できます。
以上がlaravelログインの実装の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。