FuelPHP - Événements

Un eventest une action ou une occurrence reconnue par le programme qui peut être gérée par le programme lui-même. Par exemple, nous pouvons définir une action ou un événement nommé my_fuel_event et ensuite faire un peu de travail chaque fois que l'événement, my_fuel_event est appelé. FuelPHP fournit la classe,Event pour travailler avec les événements de l'application.

Événements système

FuelPHP a défini certains des événements à travers lesquels nous pouvons effectuer un travail chaque fois que les événements définis sont appelés ou déclenchés par l'application. Cette aide modifie le comportement du FuelPHP sans modifier les fichiers de code de base du FuelPHP. Les événements prédéfinis sont les suivants -

  • app_created - Cet événement sera déclenché après l'initialisation du framework FuelPHP.

  • request_created - Cet événement sera déclenché après la création d'un nouvel objet Request.

  • request_started - Cet événement sera déclenché lorsque l'exécution d'une requête est demandée.

  • controller_started - Cet événement sera déclenché avant l'appel de la méthode before () des contrôleurs.

  • controller_finished - Cet événement sera déclenché après que les contrôleurs ont appelé la méthode () et que la réponse est reçue.

  • response_created - Cet événement sera déclenché après qu'un nouvel objet Réponse a été forgé.

  • request_finished - Cet événement sera déclenché lorsque l'exécution d'une demande est terminée et qu'une réponse est reçue.

  • shutdown - Cet événement sera déclenché après que la requête principale a été traitée et que la sortie a été envoyée.

Nous pouvons gérer les événements dans le fichier de configuration spécial, fuel/app/config/events.php comme suit -

<?php  
   return array ( 
      'fuelphp' => array ( 
         'app_created' => function() { 
            // After FuelPHP initialised
         }, 
         'request_created' => function() { 
            // After Request forged 
         }, 
         'request_started' => function() { 
            // Request is requested 
         }, 
         'controller_started' => function() { 
            // Before controllers before() method called 
         }, 
         'controller_finished' => function() { 
            // After controllers after() method called 
         }, 
         'response_created' => function() { 
            // After Response forged 
         }, 
         'request_finished' => function() { 
            // Request is complete and Response received 
         }, 
         'shutdown' => function() { 
            // Output has been send out 
         }, 
      ), 
   );

Méthodes d'événement

La classe Event fournit des méthodes pour enregistrer, désinscrire et déclencher des événements. Ils sont comme suit,

S'inscrire()

La méthode register permet aux fichiers d'enregistrer un objet qui sera exécuté lorsque la méthode de déclenchement est appelée.

$my_event_code = function() { 
   echo 'my event'; 
} 
Event::register('my_event', $my_event_code);

désinscrire ()

La méthode unregister permet aux fichiers de désinscrire un objet qui serait exécuté lorsque la méthode de déclenchement est appelée.

Event::unregister('my_event', $my_event_code);

déclencheur()

La méthode de déclenchement est utilisée pour déclencher ou activer les rappels associés via la méthode register.

Event::trigger('my_event');

has_events ()

La méthode has_events est disponible afin que vous puissiez vérifier si un événement enregistré particulier a des déclencheurs.

Event::has_events('my_event');

la forge()

La forge renvoie un nouvel objet événement.

$event = Event::forge();

exemple()

L'instance renvoie un nouveau singleton d'objet événement.

$event = Event::instance('event_instance');