Heim > Artikel > PHP-Framework > Laravel-Login-Implementierung
Laravel ist ein beliebtes PHP-Framework, das viele leistungsstarke Tools und Funktionen bietet, die Entwicklern beim einfachen Erstellen von WEB-Anwendungen helfen. Unter anderem ist die Implementierung der Login-Funktion ein wichtiger Schritt bei der Entwicklung von Anwendungen. In diesem Artikel wird erläutert, wie die Anmeldefunktion in Laravel implementiert wird.
Laravel kann über Composer, ein PHP-Abhängigkeitsverwaltungstool, installiert werden. Um Composer zu installieren, geben Sie den folgenden Befehl ein:
curl -sS https://getcomposer.org/installer | php mv composer.phar /usr/local/bin/composer
Nach Abschluss der Installation verwenden Sie den folgenden Befehl, um die Laravel-Anwendung zu erstellen.
composer create-project --prefer-dist laravel/laravel projectname
Bevor Sie das Authentifizierungssystem von Laravel verwenden, müssen Sie die Datenbank konfigurieren. Öffnen Sie die Datei .env
und ändern Sie die Datenbankverbindungseinstellungen im folgenden Beispiel. .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')); } }
以上代码中,attempt
方法将验证用户凭据,如果通过验证,将会将用户状态通过session保存,并且可以使用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'); } }
Benutzermodell erstellen
🎜🎜Als nächstes müssen Sie ein Benutzermodell erstellen, das standardmäßig von Laravel bereitgestellt wird und mit dem erstellt werden kann folgenden Befehl. 🎜rrreeeattempt
die Benutzeranmeldeinformationen , wenn übergeben Zur Überprüfung wird der Benutzerstatus während der Sitzung gespeichert und die Methode Auth::check
kann verwendet werden, um zu überprüfen, ob der Benutzer angemeldet ist. 🎜.env
hinzu: 🎜rrreee🎜Öffnen Sie dann die Klasse AppServiceProvider
und fügen Sie die folgende Zeile hinzu: 🎜rrreee🎜Dadurch wird die URL der Anwendung erzwungen Der Link wird in das HTTPS-Protokoll konvertiert. 🎜🎜🎜Zusammenfassung🎜🎜🎜In diesem Artikel wurde bisher die Implementierung der Anmeldefunktion in Laravel vorgestellt, einschließlich der Installation von Laravel, der Konfiguration der Datenbank, der Generierung eines Benutzerauthentifizierungssystems, der Erstellung eines Benutzermodells, der Registrierung und Anmeldeüberprüfung, Middleware und Erzwingung die Verwendung von HTTPS. Wenn Sie die in diesem Artikel beschriebenen Schritte zur Implementierung der Anmeldefunktion von Laravel verwenden, können Sie sicherere und funktionsreichere Anwendungen erstellen. 🎜Das obige ist der detaillierte Inhalt vonLaravel-Login-Implementierung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!