Events fournit une implémentation simple d'observateur qui permet à un utilisateur de s'abonner et d'écouter divers événements déclenchés dans l'application Web. Toutes les classes d'événements dans Laravel sont stockées dans le dossierapp/Eventset les auditeurs sont stockés dans le dossierapp/Listeners.
La commande artisanale pour générer des événements et des auditeurs dans votre application Web est présentée ci-dessous −
php artisan event:generate
Cette commande génère les événements et les auditeurs dans les dossiers respectifs, comme indiqué ci-dessus.
Les événements et les auditeurs constituent un excellent moyen de découpler une application Web, car un événement peut avoir plusieurs auditeurs indépendants. les uns des autres. Le dossier events créé par la commande artisan comprend les deux fichiers suivants : event.php et SomeEvent.php. Ils sont affichés ici −
Copier après la connexion
Comme mentionné ci-dessus,event.phpinclut la définition de base de la classeEventet appelle l'espace de nomsAppEvents. Veuillez noter que les événements définis par l'utilisateur ou personnalisés sont créés dans ce fichier.
Copier après la connexion
Observez que ce fichier utilise la sérialisation pour diffuser des événements dans une application web et que les paramètres nécessaires sont également initialisés dans ce fichier.
Par exemple, si nous devons initialiser la variable order dans le constructeur pour enregistrer un événement, nous pouvons faites-le de la manière suivante −
public function __construct(Order $order) { $this->order = $order ; }
Les auditeurs gèrent toutes les activités mentionnées dans un événement en cours d'enregistrement. La commande artisanaleevent:generatecrée tous leslistenersdans le répertoireapp/listeners. Le dossier Listeners comprend un fichierEventListener.phpqui contient toutes les méthodes nécessaires à la gestion des auditeurs.
Copier après la connexion
Comme mentionné dans le code, il comprend la fonctionhandlepour gérer divers événements. Nous pouvons créer différents auditeurs indépendants qui ciblent un seul événement.
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!