Rumah  >  Artikel  >  rangka kerja php  >  Pembangunan Laravel: Bagaimana untuk mengurus sesi menggunakan Sesi Laravel?

Pembangunan Laravel: Bagaimana untuk mengurus sesi menggunakan Sesi Laravel?

WBOY
WBOYasal
2023-06-13 18:27:001528semak imbas

Pembangunan Laravel: Bagaimana untuk menggunakan Sesi Laravel untuk mengurus sesi?

Dalam aplikasi Laravel, pengurusan sesi adalah bahagian yang sangat penting. Sesi ialah struktur data yang disimpan di bahagian pelayan yang digunakan untuk menyimpan data khusus pengguna dalam aplikasi. Data ini boleh diakses dari mana-mana halaman atau permintaan dan berterusan merentas sesi pengguna. Rangka kerja Laravel menyediakan kelas Sesi untuk mengendalikan sesi pengguna dalam aplikasi.

Artikel ini akan memperkenalkan cara menggunakan Sesi Laravel untuk mengurus sesi.

1. Apakah itu sesi

Sesi ialah struktur data yang disimpan di bahagian pelayan yang digunakan untuk menyimpan data khusus pengguna dalam aplikasi. Tidak seperti kuki, data sesi disimpan di sebelah pelayan, jadi pengguna tidak boleh melihat atau mengubah suai data ini.

Dalam Laravel, data sesi disimpan dalam fail atau pangkalan data di bahagian pelayan, bukan dalam kuki. Apabila pengguna mengakses aplikasi, Laravel menjana ID sesi yang unik, menyimpannya dalam kuki dan menyimpan data berkaitan dalam fail atau pangkalan data di bahagian pelayan. Setiap kali pengguna mengakses aplikasi, Laravel mendapatkan semula data yang berkaitan daripada pelayan berdasarkan ID sesi, membolehkan kami menyimpan dan mengakses data merentas halaman atau merentasi permintaan.

2. Dayakan dan konfigurasikan Sesi

Dalam aplikasi Laravel, perkhidmatan Sesi didayakan secara lalai dan menggunakan kuki untuk menyimpan ID sesi. Kita boleh mencari konfigurasi sesi dalam fail config/session.php. Berikut ialah beberapa pilihan konfigurasi yang biasa digunakan:

1. Pilihan 'pemandu' menentukan cara data sesi disimpan. Laravel menyediakan pelbagai pilihan, termasuk fail (pilihan lalai, menyimpan data dalam fail di bahagian pelayan), kuki (menyimpan data dalam kuki), pangkalan data (menyimpan data dalam pangkalan data), dan redis (menyimpan data di tengah redis. ).

2. Pilihan 'seumur hidup' menentukan hayat data sesi dalam beberapa saat.

3. Pilihan 'encrypt' menentukan sama ada data sesi perlu disulitkan.

4. Pilihan 'domain' menentukan domain kuki.

5. Pilihan 'laluan' menentukan laluan kuki.

Hanya ubah suai pilihan konfigurasi ini dalam fail config/session.php.

3. Menggunakan Sesi dalam Laravel

1 Dayakan perkhidmatan Sesi

Sebelum menggunakan perkhidmatan Sesi Laravel, kami mesti mendayakannya. Perkhidmatan Sesi sudah didaftarkan dengan Laravel, jadi kami tidak perlu mendayakannya secara manual. Kami boleh menggunakan Sesi kelas fasad terbina dalam Laravel untuk mengakses perkhidmatan Sesi. Kelas ini menyediakan banyak kaedah berguna seperti get(), put(), dan pull().

Untuk mengetahui fungsi perkhidmatan Sesi, sila lihat contoh:

namespace AppHttpControllers;
use IlluminateHttpRequest;
use IlluminateSupportFacadesSession;
class UserController extends Controller
{
    public function index(Request $request)
    {
        // 存储一个 Session 值...
        Session::put('key', 'value');
        // 获取一个 Session 值...
        $value = Session::get('key');
        // 删除一个 Session 值...
        Session::forget('key');
        // 永久的删除一个 Session 值...
        Session::flush();
        // 重新生成 Session ID...
        Session::regenerate();
    }
}

2 Simpan data dalam Sesi

Kami boleh menggunakan Sesi::put(. ) kaedah untuk meletakkan data Disimpan dalam Sesi, seperti yang ditunjukkan di bawah:

$val = 'Hello World';
Session::put('key', $val);

3. Dapatkan data daripada Sesi

Kita boleh menggunakan kaedah Session::get() untuk mendapatkan semula data daripada Sesi, seperti ditunjukkan di bawah:

$val = Session::get('key');

4. Padamkan data daripada Sesi

Kita boleh menggunakan kaedah Session::forget() untuk memadam data daripada Sesi, seperti yang ditunjukkan di bawah:

rreee

5 . Kosongkan Sesi

Kami boleh menggunakan kaedah Session::flush() untuk mengosongkan semua data dalam Sesi, seperti yang ditunjukkan di bawah:

Session::forget('key');

6 Jana Semula ID

Kita boleh menggunakan kaedah Session The ::regenerate() menjana semula ID Sesi seperti berikut:

Session::flush();

4. Ringkasan

Laravel menyediakan perkhidmatan Sesi yang mudah digunakan untuk mengurus sesi pengguna dalam aplikasi. Kita boleh menggunakan kaedah yang disediakan oleh kelas Sesi untuk menyimpan, mendapatkan semula dan memadam data sewenang-wenangnya. Perkhidmatan sesi ialah alat yang sangat penting dan berguna apabila mengurus data khusus pengguna dalam aplikasi Laravel.

Atas ialah kandungan terperinci Pembangunan Laravel: Bagaimana untuk mengurus sesi menggunakan Sesi Laravel?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn