Maison > développement back-end > tutoriel php > Travailler avec les données de session Flash dans Laravel

Travailler avec les données de session Flash dans Laravel

James Robert Taylor
Libérer: 2025-03-12 17:08:21
original
400 Les gens l'ont consulté

Travailler avec les données de session Flash dans Laravel

Laravel simplifie la gestion des données de session temporaires à l'aide de ses méthodes de flash intuitives. Ceci est parfait pour afficher de brefs messages, alertes ou notifications dans votre application.

Les données ne persistent que pour la demande ultérieure par défaut:

 $ request-> session () -> flash ('status', 'tâche terminée avec succès!');
Copier après la connexion

Laravel propose plusieurs fonctions flash spécialisées:

 // étendez toutes les données flash à la demande suivante
$ request-> session () -> reflash ();

// étendre des éléments de données flash spécifiques
$ request-> session () -> keep (['username', 'email']);

// Flash Données accessibles uniquement dans la demande actuelle
$ request-> session () -> maintenant ('statut', 'opération terminée');
Copier après la connexion

Voici un exemple pratique dans un système de notification:

 CLASS NOTIFICATION Contrôleur étend le contrôleur
{
    Public Fonction ProcessForm (Demande $ demande)
    {
        essayer {
            Db :: transaction (function () use ($ request) {
                // Soumission de formulaire de traitement
                $ result = $ this-> processData ($ request-> all ());

                // Flash Success Message pour la prochaine demande
                $ request-> session () -> flash ('message', 'formulaire soumis avec succès');
                $ request-> session () -> flash ('Détails', [
                    'id' => $ result-> id,
                    'TimeStamp' => Now () -> TodateTimeString ()
                ]));

                // Gardez conditionnellement les détails en fonction de la préférence des utilisateurs
                if ($ request-> a ('show_details')) {
                    $ request-> session () -> Keep (['Détails']);
                }
            });

            return redirect () -> Route ('Dashboard');

        } catch (exception $ e) {
            Logger () -> Error ('Formulaire de la soumission a échoué', ['error' => $ e-> getMessage ()]);

            // Affichez l'erreur immédiatement dans la demande actuelle
            $ request-> session () -> maintenant ('error', 'déchets de soumission');

            return back () -> innutput ();
        }
    }
}
Copier après la connexion

Tirer parti des données Flash Session fournit un moyen efficace de gérer la messagerie spécifique à la demande sans la surcharge du stockage persistant, ce qui se traduit par une application plus réactive et conviviale.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal