Événements Laravel 9 avec exemple

Événements Laravel 9 avec exemple

«Aujourd'hui, nous apprenons un sujet important de Laravel avec un exemple. J'espère que cela vous aidera à comprendre le sujet d'aujourd'hui. Dans cet exemple, nous montrerons comment suivre l'historique de connexion de votre application et stocker des données dans la base de données à l'aide d'événements et d'écoute."

Qu'est-ce qu'un événement Laravel?

Les événements de Laravel sont un moyen de mettre en œuvre un modèle d'observateur simple de l'activité de votre application. Comme si vous souhaitez surveiller, lorsque votre utilisateur d'application se connecte à partir de quelle IP vous pouvez exécuter une fonction à l'aide d'événements. Si vous avez un site de commerce électronique, vous devez parfois informer ou envoyer un SMS à votre fournisseur chaque fois qu'une nouvelle commande est passée. Ainsi, nous pouvons appeler les événements comme preneurs d'action de notre application. Laravel a une fonctionnalité par défaut pour gérer un événement.

Qu'est-ce qu'un auditeur à Laravel?

Dans le Laravel, l'auditeur est une classe qui effectue des instructions d'événement. Par exemple, vous souhaitez envoyer un courrier de bienvenue unique à votre client lorsqu'il s'inscrit sur votre site. Dans ce cas, nous pouvons définir un événement qui appelle un auditeur pour envoyer le courrier.

Passons à notre exemple; Pour cela, nous devons installer Laravel sur notre serveur local.

Remarque: Avant de commencer ce projet, vous devez préinstaller Laravel Auth dans votre projet. Si vous ne savez pas comment installer et configurer Auth dans Laravel, veuillez consulter un autre tutoriel, où nous avons expliqué comment vous pourriez ajouter Auth à votre projet.

Processus de travail du projet d'événement -

  • Étape 1 - Créez un projet d'événement Laravel 9 dans l'hôte local
  • Étape 2- Connectez la base de données avec le projet de l'événement
  • Étape 3- Créez un événement et un auditeur à Laravel
  • Étape 4 - Créez une table de données et une migration
  • Étape 5- Exécutez et testez l'application de l'événement

Étape 1 - Créez un projet d'événement Laravel 9 dans l'hôte local

Avant de créer le projet, assurez-vous que l'environnement Laravel est prêt sur notre ordinateur.

Événements de Laravel / Laravel du compositeur Create-Project

Étape 2- Connectez la base de données avec TheEvent Project

Pour connecter la base de données, nous devons ouvrir le .fichier env du répertoire du projet. Nous devons créer un nouvel utilisateur de base de données avant de nous connecter.

Étape 3- Créez un événement et un auditeur à Laravel

Avant de commencer, nous devions savoir où nous devions nous inscrire à l'événement. Cela s'appelle EventServiceProvider, où nous enregistrons notre événement et nos auditeurs. Il est situé dans le Répertoire des fournisseurs d'applications. Nous devons maintenant aller au dossier et devoir ouvrir le fichier.

Comme vous le voyez, il y a déjà un événement, et l'auditeur a été enregistré par le nom de Class et SendEmailVerificationNotification :: Classe .

Maintenant, besoin d'exécuter ces deux recommandations

PHP Artisian Make: Event UserLoginhistory
PHP Artisian Make: Écouteur StoreloginHistory - - Event = UserLoginHistory


La prochaine étape est ajoutera notre propre événement et l'auditeur à EventserviceProvider.

protégé $ écouter = [
Enregistré :: class => [
Classe SendEmailVerificationNotification ::,
]],
UserLoginHistory :: class => [
StoreloginHistory :: Classe,
]],
]]

Maintenant, il faut modifier le fichier d'événements UserLoginHistory sous App \ Events avec ce code

public $ utilisateur;
/ **
* Créez une nouvelle instance d'événement.
*
* @reTurnVoid
* /
publicFunction__Construct ($ utilisateur)

$ this-> user = $ utilisateur;

Nous devons écrire le code dans l'auditeur pour exécuter le programme.

PublicFunctionHandle (UserLoginHistory $ Event)

$ LogInTime = Carbon :: Now () -> TodateTimeString ();
$ userDetails = $ event-> utilisateur;
$ input ['name'] = $ userDetails-> name;
$ input ['e-mail'] = $ userDetails-> e-mail;
$ input ['login_time'] = $ logInTime;
$ SaveHistory = ModelsUserLoginHistory :: Create ($ entrée);
Retour $ SaveHistory;

Tout fait maintenant; Besoin de créer une table.

Étape 4 - Créez une table de données et une migration

Maintenant, il faut créer une table UserLoginHistory dans notre base de données, en utilisant ce recommandation

PHP Artisan Make: ModeserLoginHistory -M


Ensuite, nous devons ajouter cette ligne à notre table

Maintenant, il faut l'ajouter au modèle UserLoginHistory

Maintenant besoin d'exécuter cette félicitation

PHP Artisan Migrate

Nous avons presque fini. Maintenant, il faut configurer une fonction pour appeler l'événement. Appelons lorsque l'utilisateur se connecte et allons au tableau de bord.

Étape 5- Exécutez et testez l'application de l'événement

Maintenant, besoin d'exécuter la commande pour la finale de tester le projet

PHP Artisan Serve


et allez dans la zone de connexion, mettez votre nom d'utilisateur et votre mot de passe, et connectez-vous.

Une fois que vous vous connectez, enregistrez la base de données. Il affichera les données stockées dans la base de données MySQL.

Avant de se connecter

Après la connexion

Consolations

Aujourd'hui, nous avons appris à des événements et des auditeurs travaillent à Laravel. Donc, si vous avez besoin d'attribuer plusieurs auditeurs à votre événement, vous pouvez ajouter la classe d'auditeur à votre événement. J'espère que le projet de l'événement vous aidera à comprendre l'événement Laravel 9 et les auditeurs.