FuelPHP - Eventi
Un eventè un'azione o un evento riconosciuto dal programma che può essere gestito dal programma stesso. Ad esempio, possiamo definire un'azione o un evento denominato my_fuel_event e quindi eseguire del lavoro ogni volta che viene chiamato l'evento, my_fuel_event. FuelPHP offre classe,Event per lavorare con gli eventi nell'applicazione.
Eventi di sistema
FuelPHP ha definito alcuni degli eventi attraverso i quali possiamo fare del lavoro ogni volta che gli eventi definiti vengono chiamati o attivati dall'applicazione. Questa guida modifica il comportamento di FuelPHP senza modificare i file di codice di base di FuelPHP. Gli eventi predefiniti sono i seguenti:
app_created - Questo evento verrà attivato dopo che il framework FuelPHP è stato inizializzato.
request_created - Questo evento verrà attivato dopo che un nuovo oggetto Request è stato forgiato.
request_started - Questo evento verrà attivato quando viene richiesta l'esecuzione di una richiesta.
controller_started - Questo evento verrà attivato prima che il metodo controller before () venga chiamato.
controller_finished - Questo evento verrà attivato dopo che i controller after () sono stati chiamati e la risposta è stata ricevuta.
response_created - Questo evento verrà attivato dopo che un nuovo oggetto Response è stato forgiato.
request_finished - Questo evento verrà attivato quando l'esecuzione di una richiesta è completa e viene ricevuta una risposta.
shutdown - Questo evento verrà attivato dopo che la richiesta principale è stata elaborata e l'output è stato inviato.
Possiamo gestire gli eventi nello speciale file di configurazione, fuel/app/config/events.php come segue -
<?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 
         }, 
      ), 
   ); 
    Metodi evento
La classe Event fornisce metodi per registrare, annullare la registrazione e generare eventi. Sono i seguenti,
Registrati()
Il metodo register consente ai file di registrare un oggetto che verrà eseguito quando viene chiamato il metodo trigger.
$my_event_code = function() { 
   echo 'my event'; 
} 
Event::register('my_event', $my_event_code); 
    unregister ()
Il metodo unregister consente ai file di annullare la registrazione di un oggetto che verrebbe eseguito quando viene chiamato il metodo trigger.
Event::unregister('my_event', $my_event_code); 
    trigger ()
Il metodo trigger viene utilizzato per attivare o attivare i callback associati tramite il metodo register.
Event::trigger('my_event'); 
    has_events ()
Il metodo has_events è disponibile in modo da poter controllare se un particolare evento registrato ha dei trigger.
Event::has_events('my_event'); 
    fucina()
La fucina restituisce un nuovo oggetto evento.
$event = Event::forge(); 
    esempio()
L'istanza restituisce un nuovo oggetto evento singleton.
$event = Event::instance('event_instance');