Laravel 9 hendelser med eksempel

Laravel 9 hendelser med eksempel

”I dag lærer vi et viktig tema med Laravel med et eksempel. Jeg håper det vil hjelpe deg å forstå dagens emne. I dette eksemplet vil vi vise hvordan du sporer påloggingshistorikken til applikasjonen din og lagrer data i databasen ved hjelp av hendelser og lytter.”

Hva er en hendelse Laravel?

Laravel -hendelser er en måte å implementerer enkel implementering av aktiviteten til applikasjonen din. Som du vil overvåke, når applikasjonsbrukeren din logger inn fra hvilken IP du kan utføre noen funksjoner ved hjelp av hendelser. Hvis du har et e-handelsnettsted, må du noen ganger varsle eller sende en SMS til leverandøren din når en ny ordre er plassert. Så vi kan kalle hendelser som actiontakere for søknaden vår. Laravel har noen standardfunksjonalitet for å håndtere en hendelse.

Hva er en lytter i Laravel?

I Laravel er lytteren en klasse som utfører hendelsesinstruksjoner. For eksempel vil du sende en engangs velkomstpost til klienten din når de registrerer seg på nettstedet ditt. I dette tilfellet kan vi sette en hendelse som ringer en lytter for å sende posten.

La oss flytte til vårt eksempel; For dette må vi installere Laravel på vår lokale server.

Merk: Før du starter dette prosjektet, må du forhåndsinstallere Laravel Auth i prosjektet ditt. Hvis du ikke vet hvordan du installerer og konfigurerer Auth i Laravel, kan du sjekke en annen opplæring, hvor vi forklarte hvordan du kan legge til autoritet til prosjektet.

Arrangementsprosjektarbeidsprosess -

  • Trinn 1 - Opprett et Laravel 9 -arrangementsprosjekt i den lokale verten
  • Trinn 2- Koble database med hendelsesprosjektet
  • Trinn 3- Lag en hendelse og lytter i Laravel
  • Trinn 4 -Lag en datatabell og migrasjon
  • Trinn 5- Kjør og test hendelsesapplikasjonen

Trinn 1 - Opprett et Laravel 9 -arrangementsprosjekt i den lokale verten

Før du oppretter prosjektet, må du forsikre deg om at Laravel -miljøet er klart på datamaskinen vår.

Komponist Create-Project Laravel/Laravel-hendelser

Trinn 2- Connect Database med TheEvent Project

For å koble til databasen, må vi åpne .Env -fil fra prosjektkatalogen. Vi må opprette en ny databasebruker før du kobler til.

Trinn 3- Lag en hendelse og lytter i Laravel

Før vi startet, trengte vi å vite hvor vi måtte registrere oss for arrangementet. Det kalles EventServiceProvider, hvor vi registrerer vårt arrangement og lyttere. Det ligger i app \ leverandørkatalog. Nå må vi gå til mappen og må åpne filen.

Som du ser, er det allerede en hendelse, og lytteren ble registrert med navnet registrert :: klasse og sendemailverificationNotification :: klasse .

Trenger nå å kjøre disse to rosene

PHP Artisian Make: Event UserLoginHistory
PHP Artisian Make: Listener StoreloginHistory - - Event = UserLoginHistory


Neste trinn er vil legge til vår egen begivenhet og lytteren til EventServiceProvider.

beskyttet $ lytt = [
Registrert :: klasse => [
SendEmailverificationNotification :: Klasse,
],
UserLoginHistory :: klasse => [
Storeloginhistory :: klasse,
],
];

Trenger nå å endre den brukerloginhistory hendelsesfilen under app \ hendelser med denne koden

offentlig $ bruker;
/**
* Opprett en ny hendelsesinstans.
*
* @reeturnvoid
*/
publicFunction__Construct ($ bruker)

$ this-> bruker = $ bruker;

Vi må skrive koden i lytteren for å utføre programmet.

PublicFunctionHandle (UserLoginHistory $ Event)

$ logIntime = karbon :: nå ()-> toDateTimestring ();
$ userDetails = $ Event-> Bruker;
$ input ['name'] = $ userDetails-> name;
$ input ['e-post'] = $ userDetails-> e-post;
$ input ['login_time'] = $ logIntime;
$ SaveHistory = ModelSuserLoginHistory :: Create ($ input);
Return $ SaveHistory;

Alt gjort nå; trenger å lage et bord.

Trinn 4 -Lag en datatabell og migrasjon

Trenger nå å opprette en brukerloginhistory -tabell i vår database, ved å bruke dette ros

PHP Artisan Make: ModelUserLoginhistory -M


Da må vi legge denne linjen til bordet vårt

Nå må du legge dette til brukerloginhistory -modellen

Trenger nå å kjøre dette rose

PHP Artisan migrerer

Vi er nesten ferdige. Må nå konfigurere en funksjon for å ringe hendelsen. La oss ringe når brukeren logger inn og går til dashbordet.

Trinn 5- Kjør og test hendelsesapplikasjonen

Nå må du kjøre kommandoen for finalen i testen prosjektet

PHP Artisan server


og gå til påloggingsområdet, legg brukernavn og passord og pålogging.

Når du har logget inn, sjekk inn databasen. Den vil vise de lagrede dataene i MySQL -databasen.

Før innlogging

Etter innlogging

Trøst

I dag lærte vi hvordan vi skal arrangere og lyttere jobber i Laravel. Så hvis du trenger å tildele flere lyttere til arrangementet ditt, kan du legge til lytterklassen til arrangementet ditt. Jeg håper arrangementsprosjektet vil hjelpe deg å forstå Laravel 9 -arrangementet og lytterne.