Laravel memudahkan mengendalikan data sesi sementara menggunakan kaedah flash intuitifnya. Ini sesuai untuk memaparkan mesej ringkas, makluman, atau pemberitahuan dalam permohonan anda.
Data hanya berterusan untuk permintaan seterusnya secara lalai:
$ request-> sesi ()-> flash ('status', 'tugas selesai berjaya!');
Laravel menawarkan beberapa fungsi kilat khusus:
// Lanjutkan semua data flash ke permintaan seterusnya $ permintaan-> sesi ()-> reflash (); // Panjangkan item data flash tertentu $ permintaan-> sesi ()-> simpan (['nama pengguna', 'e-mel']); // data flash hanya dapat diakses dalam permintaan semasa $ permintaan-> sesi ()-> sekarang ('status', 'operasi selesai');
Inilah contoh praktikal dalam sistem pemberitahuan:
Pemberitahuan Kelas Kontroler Memperluas Pengawal { Proses Fungsi Awam (permintaan $ permintaan) { Cuba { Db :: transaksi (fungsi () penggunaan ($ permintaan) { // Penyerahan borang proses $ result = $ this-> processData ($ request-> all ()); // mesej kejayaan kilat untuk permintaan seterusnya $ permintaan-> sesi ()-> flash ('mesej', 'borang yang dikemukakan dengan jayanya'); $ permintaan-> sesi ()-> flash ('butiran', [ 'id' => $ hasil-> id, 'timestamp' => sekarang ()-> todateTimeString () ]); // terperinci terperinci berdasarkan keutamaan pengguna jika ($ permintaan-> mempunyai ('show_details')) { $ permintaan-> sesi ()-> menyimpan (['butiran']); } }); kembali redirect ()-> laluan ('papan pemuka'); } menangkap (pengecualian $ e) { logger ()-> ralat ('penyerahan borang gagal', ['error' => $ e-> getMessage ()]); // ralat paparan segera dalam permintaan semasa $ permintaan-> sesi ()-> sekarang ('ralat', 'penyerahan gagal'); kembali kembali ()-> input (); } } }
Memanfaatkan data sesi kilat menyediakan cara yang cekap untuk menguruskan pemesejan khusus permintaan tanpa overhead penyimpanan berterusan, menghasilkan aplikasi yang lebih responsif dan mesra pengguna.
Atas ialah kandungan terperinci Bekerja dengan Data Sesi Flash di Laravel. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!