Masalah
Anda ingin melihat apakah pengguna masuk is.
Anda tahu Laravel secara otomatis menyimpan pengguna yang diautentikasi dalam sesi. Anda ingin memeriksa apakah permintaan saat ini memiliki pengguna yang masuk dan diautentikasi.
Larutan
Menggunakan Otentikasi::cek()
.
Itu Otentikasi::cek()
metode mengembalikan benar atau salah.
gema "Yay! Anda masuk.";
Diskusi
Beberapa hal terjadi di balik layar ketika Anda melakukan ini.
Laravel pertama memeriksa apakah sesi saat ini memiliki id pengguna. Jika demikian, maka upaya dilakukan untuk mengambil pengguna dari database.
Jika gagal, maka Laravel memeriksa cookie "ingat saya". Jika itu ada maka sekali lagi upaya dilakukan untuk mengambil pengguna dari database.
Hanya jika pengguna yang valid diambil dari database benar dikembalikan.
Filter 'tamu' menggunakan metode ini
Laravel menyediakan implementasi default dari filter tamu di aplikasi/filter.php
.
if (Auth::check()) mengembalikan Redirect::to('/');
);
Implementasi default ini digunakan ketika Anda ingin menambahkan filter ke rute yang hanya dapat diakses oleh tamu (alias pengguna yang tidak login). Jika pengguna masuk maka mereka diarahkan ke halaman beranda.