Top 91 de întrebări și răspunsuri la interviu Laravel (2024)
Iată întrebările și răspunsurile la interviu Laravel pentru candidații mai proaspeți, precum și cu experiență, pentru a obține locul de muncă visat.
Întrebări și răspunsuri la interviu Laravel pentru cei proaspăt
1) Ce este Laravel?
Laravel este un cadru PHP cu sursă deschisă utilizat pe scară largă. Platforma a fost destinată dezvoltării de aplicații web folosind modelul arhitectural MVC. Laravel este lansat sub licență MIT.
Prin urmare, codul său sursă este găzduit pe GitHub. Este un cadru PHP de încredere, deoarece urmează reguli de limbaj expresive și precise.
2) Care este cea mai recentă versiune Laravel?
Cea mai recentă versiune Laravel este versiunea 8, care a fost lansată pe 8 septembrie 2020.
3) Definiți compozitorul.
Este un manager de pachete la nivel de aplicație pentru PHP. Oferă un format standard pentru gestionarea dependențelor și bibliotecilor software PHP.
4) Ce este middleware HTTP?
Middleware-ul HTTP este o tehnică de filtrare a cererilor HTTP. Laravel include un middleware care verifică dacă utilizatorul aplicației este autentificat sau nu.
5) Numiți metodele agregate ale constructorului de interogări.
Metodele agregate ale generatorului de interogări sunt: 1) max(), 2) min(), 3) sum(), 4) avg() și 5) count().
6) Ce este un traseu?
O rută este practic un punct final specificat de un URI (Uniform Resource Identifier). Acesta acționează ca un pointer în aplicația Laravel.
Cel mai frecvent, o rută indică pur și simplu o metodă de pe un controler și, de asemenea, dictează ce metode HTTP pot atinge acel URI.
7) De ce să folosiți Route?
Rutele sunt stocate în fișierele din folderul /routes din directorul rădăcină al proiectului. În mod implicit, există câteva fișiere diferite care corespund diferitelor „laturi” ale aplicației („laturile” provine din metodologia arhitecturii hexagonale).
8) Ce înțelegi prin pachete?
In Laravel, pachetele sunt denumite pachete. Aceste pachete sunt folosite pentru a crește funcționalitatea Laravel. Un pachet poate avea vizualizări, configurare, migrări, rute și sarcini.
9) Explicați directoarele importante utilizate într-o aplicație comună Laravel.
Directoarele utilizate într-o aplicație comună Laravel sunt:
- App/: Acesta este un folder sursă în care se află codul aplicației noastre. Toate controlerele, politicile și modelele se află în acest folder.
- Config/: Deține fișierele de configurare ale aplicației. Acestea nu sunt de obicei modificate direct, ci se bazează pe valorile configurate în fișierul .env (mediu) de la rădăcina aplicației.
- Baza de date/: găzduiește fișierele bazei de date, inclusiv migrările, semințele și fabricile de testare.
- Public/: Dosar accesibil public care conține active compilate și, desigur, un fișier index.php.
10) Ce este un controler?
Un controler este „C” în arhitectura „MVC” (Model-View-Controller), pe care se bazează Laravel.
11) Explicați rutarea inversă în Laravel.
Reverse routing este o metodă de generare a URL-ului bazată pe simbol sau nume. Face aplicația dvs. Laravel flexibilă.
12) Explicați trăsăturile în Laravel.
Trăsăturile Laravel sunt un grup de funcții pe care le includeți într-o altă clasă. O trăsătură este ca o clasă abstractă. Nu puteți instanția direct, dar metodele sale pot fi folosite în clasa concreate.
13) Explicați conceptul de contracte în Laravel.
Sunt un set de interfețe ale cadrului Laravel. Aceste contracte oferă servicii de bază. Contractele definite în Laravel includ implementarea corespunzătoare a cadrului.
14) Cum veți înregistra furnizorii de servicii?
Puteți înregistra furnizorii de servicii în fișierul de configurare config/app.php care conține o matrice în care puteți menționa numele clasei furnizorului de servicii.
15) Unde vei defini Fațadele lui Laravel?
Toate fațadele din Laravel au definit în spațiul de nume Illuminate\Support\Facades.
16) Precizați diferența dintre metoda get și post.
Metoda Get vă permite să trimiteți o cantitate limitată de date în antet. Postarea vă permite să trimiteți o cantitate mare de date în organism.
17) Listați pachetele implicite ale Laravel 5.6.
Pachetele implicite ale Laravel 5.6 sunt: 1) Envoy, 2) Passport, 3) Socialite, 4) Cashier, 5) Horizon și 6) Scout.
18) Ce este containerul de service în Laravel?
Containerul de servicii este un instrument utilizat pentru efectuarea injectării dependenței în Laravel.
19) Cum puteți activa jurnalul de interogări în Laravel?
Puteți utiliza metoda enableQueryLog pentru a activa jurnalul de interogări în Laravel.
20) Explicați conceptul de evenimente în Laravel.
Un eveniment este o apariție sau o acțiune care vă ajută să vă abonați și să ascultați evenimentele care au loc în aplicația Laravel. Unele dintre evenimente sunt declanșate automat de Laravel atunci când are loc orice activitate.
21) Explicați injecția de dependență și tipurile acestora.
Este o tehnică în care un obiect este dependent de un alt obiect. Există trei tipuri de injecție de dependență: 1) injecție de constructor, 2) injecție de setter și 3) injecție de interfață.
22) Care sunt avantajele utilizării Laravel?
Iată beneficiile importante ale Laravel:
- Laravel are un motor de șabloane blade pentru a crea machete dinamice și pentru a crește sarcinile de compilare.
- Reutilizați codul fără nicio bătaie de cap.
- Laravel vă oferă să impuneți constrângeri între mai multe obiecte DBM utilizând un mecanism avansat de generare de interogări.
- Cadrul are o funcție de încărcare automată, astfel încât să nu faceți întreținere manuală și căi de includere
- Cadrul vă ajută să creați noi instrumente utilizând containerul LOC.
- Laravel oferă un sistem de control al versiunilor care ajută la gestionarea simplificată a migrațiilor.
23) Explicați conceptul de validare în Laravel.
Validarile sunt un concept important in timpul proiectarii oricarei aplicatii Laravel. Se asigură că datele sunt întotdeauna într-un format așteptat înainte de a fi stocate în baza de date. Laravel oferă multe modalități de a vă valida datele.
Trăsătura controlerului de bază utilizează o clasă ValidatesRequests care oferă o metodă utilă pentru a valida cererile venite de la mașina client.
24) Ce înseamnă ORM?
ORM înseamnă Object Relational Mapping
25) Cum puteți reduce utilizarea memoriei în Laravel?
În timp ce procesați o cantitate mare de date, puteți utiliza metoda cursorului pentru a reduce utilizarea memoriei.
Întrebări și răspunsuri la interviu Laravel pentru 2 și 3 ani de experiență
26) Enumerați tipurile de relații disponibile în Laravel Eloquent.
Tipurile de relații în Laravel Eloquent sunt: 1) Unu la unu 2) Unu la mulți 3) Mulți la mulți 4) Are multe prin și 5) Relații polimorfe.
27) Denumiți motorul de șabloane utilizat de Laravel.
Blade este un puternic motor de șablon utilizat de Laravel.
28) Numele bazelor de date suportate de Laravel.
Laravel acceptă următoarele baze de date:
- PostgreSQL
- SQL Server
- SQLite
- MySQL
29) De ce sunt importante migrațiile?
Migrațiile sunt importante deoarece vă permite să partajați aplicația prin menținerea coerenței bazei de date. Fără migrare, este dificil să partajați orice aplicație Laravel. De asemenea, vă permite să sincronizați baza de date.
30) Definiți Lumen
Lumen este un micro-cadru. Este o versiune mai mică și mai rapidă a unei clădiri bazate pe Laravel și a API-urilor REST.
31) Explicați PHP artizan
Un artizan este un instrument de linie de comandă al Laravel. Oferă comenzi care vă ajută să construiți aplicația Laravel fără nicio bătaie de cap.
32) Cum puteți genera URL-uri?
Laravel are ajutoare pentru a genera adrese URL. Acest lucru este util atunci când creați link în șabloanele și răspunsul API.
33) Ce clasă este folosită pentru a gestiona excepțiile?
Excepțiile Laravel sunt gestionate de clasa App\Exceptions\Handler.
34) Care sunt codurile de eroare HTTP comune?
Cele mai comune coduri de eroare HTTP sunt:
- Eroare 404 – Se afișează când pagina nu este găsită.
- Eroare-401 – Afișează când o eroare nu este autorizată
35) Explicați generatorul de interogări fluent în Laravel.
Este un generator de interogări de baze de date care oferă o interfață convenabilă și mai rapidă pentru a crea și rula interogări de baze de date.
36) La ce folosește funcția dd()?
Această funcție este folosită pentru a descărca conținutul unei variabile în browser. Forma completă a lui dd este Dump and Die.
37) Enumerați comenzile artizanale comune utilizate în Laravel.
Laravel acceptă următoarele comenzi artizanale:
- PHP artizan jos;
- PHP artizan sus;
- PHP artisan make:controller;
- PHP artizan make:model;
- PHP artizan make:migration;
- PHP artizan make:middleware;
38) Cum se configurează o e-mail Laravel?
Laravel oferă API-uri pentru a trimite un e-mail pe serverul local și live.
39) Explicați Auth.
Este o metodă de identificare a acreditării de conectare a utilizatorului cu o parolă. În Laravel poate fi gestionat cu o sesiune care ia doi parametri 1) nume de utilizator și 2) parolă.
40) Faceți diferența între delete() și softDeletes().
- delete(): șterge toate înregistrările din tabelul bazei de date.
- softDeletes(): Nu elimină datele din tabel. Este folosit pentru a semnala orice înregistrare ca fiind ștearsă.
41) Cum puteți face fișier sitemap.xml în timp real în Laravel?
Puteți crea toate paginile web ale unui site web pentru a spune motorului de căutare despre conținutul site-ului organizator. Crawlerele motorului de căutare citesc inteligent acest fișier pentru a accesa cu crawlere un site web.
42) Explicați faker în Laravel.
Este un tip de modul sau pachete care sunt folosite pentru a crea date false. Aceste date pot fi folosite în scop de testare.
Poate fi folosit și pentru a genera: 1) Numbers, 2) Adrese, 3) DateTime, 4) Plăți și 5) Text Lorem.
43) Cum veți verifica existența tabelului sau în baza de date?
Utilizați funcția hasTable() Laravel pentru a verifica dacă tabelul dorit există sau nu în baza de date.
44) Care este diferența semnificativă dintre funcția insert() și insertGetId() în Laravel?
- Insert(): Această funcție este folosită pur și simplu pentru a insera o înregistrare în baza de date. Nu este necesar ca ID-ul să fie incrementat automat.
- InsertGetId(): Această funcție inserează, de asemenea, o înregistrare în tabel, dar este utilizată atunci când câmpul ID este auto-increment.
45) Explicați conceptul de înregistrare activă în Laravel.
În înregistrarea activă, mapați clasa la tabelul bazei de date. Vă ajută să vă ocupați de operarea CRUD.
46) Enumerați conceptele de bază în Laravel?
Următoarele sunt conceptele de bază utilizate în Laravel:
- Rutare
- ORM elocvent
- middleware
- Securitate
- Caching
- Modelarea lamei
47) Definiți controlerul implicit.
Controllerele implicite vă ajută să definiți o rută adecvată pentru a gestiona acțiunea controlerului. Le puteți defini în fișierul route.php cu metoda Route:: controller().
48) Cum se utilizează tabelul personalizat în modelul Laravel?
Pentru a utiliza un tabel personalizat, puteți suprascrie proprietatea variabilei protejate $table.
49) Ce este cadrul MVC?
Este modelul, vizualizarea și controlerul:
- Model: Modelul definește logica pentru a scrie aplicația Laravel.
- Vizualizare: acoperă logica UI a aplicației Laravel.
- Controler: funcționează ca interfață între Model și View. Este o modalitate prin care utilizatorul interacționează cu o aplicație.
50) Definiți @include.
@include este folosit pentru a încărca mai multe fișiere de vizualizare șablon. Vă ajută să includeți vizualizarea într-o altă vizualizare. Utilizatorul poate încărca, de asemenea, mai multe fișiere într-o singură vizualizare.
Întrebări și răspunsuri la interviu Laravel pentru 5 ani de experiență
51) Explicați conceptul de cookie-uri.
Cookie-urile sunt fișiere mici trimise de pe un anumit site web și stocate pe computer de browserul utilizatorului în timp ce utilizatorul navighează.
52) Ce fișier este folosit pentru a crea o conexiune cu baza de date?
Pentru a crea o conexiune cu baza de date, puteți utiliza fișierul .env.
53) Ce este Elocvent?
Eloquent este un ORM folosit în Laravel. Oferă o implementare simplă a înregistrărilor active care lucrează cu baza de date. Fiecare tabel de bază de date are modelul său, care obișnuia să interacționeze cu tabelul.
54) Numiți câteva controlere de autentificare încorporate ale Laravel.
Instalarea Laravel are un set încorporat de controlere de autentificare comune. Aceste controlere sunt:
- RegisterController
- LoginController
- ResetarePasswordController
- ForgetPasswordController
55) Definiți garda Laravel.
Laravel guard este o componentă specială care este folosită pentru a găsi utilizatori autentificați. Solicitarea primită este inițial direcționată prin acest gard pentru a valida acreditările introduse de utilizatori.
56) Care este limita de rată a API-ului Laravel?
Este o caracteristică a lui Laravel. Oferă accelerarea mânerului. Limitarea ratei îi ajută pe dezvoltatorii Laravel să dezvolte o aplicație sigură și să prevină atacurile DOS.
57) Explicați colecțiile în Laravel.
Collections este o clasă wrapper pentru a lucra cu matrice. Interogările Laravel Eloquent utilizează un set al celor mai comune funcții pentru a returna rezultatul bazei de date.
58) La ce folosește fațada DB?
Fațada DB este folosită pentru a rula interogări SQL, cum ar fi crearea, selectarea, actualizarea, inserarea și ștergerea.
59) La ce folosește maparea relațională cu obiecte?
Object Relational Mapping este o tehnică care ajută dezvoltatorii să abordeze, să acceseze și să manipuleze obiecte fără a lua în considerare relația dintre obiect și sursele lor de date.
60) Explicați conceptul de rutare în Laravel.
Permite rutarea tuturor solicitărilor aplicației către controler. Rutarea Laravel recunoaște și acceptă un identificator uniform de resurse cu o închidere.
61) Ce este Ajax în Laravel?
Ajax înseamnă Asynchronous JavaScript și XML este o tehnică de dezvoltare web care este utilizată pentru a crea aplicații web asincrone. În Laravel, funcțiile response() și json() sunt folosite pentru a crea aplicații web asincrone.
62) Ce este o sesiune în Laravel?
Sesiunea este folosită pentru a transmite informații despre utilizator de la o pagină web la alta. Laravel oferă diverse drivere, cum ar fi cookie, matrice, fișier, Memcached și Redis pentru a gestiona datele sesiunii.
63) Cum se accesează datele sesiunii?
Datele sesiunii pot fi accesate prin crearea unei instanțe a sesiunii în cererea HTTP. Odată ce obțineți instanța, utilizați metoda get() cu o „Cheie” ca parametru pentru a obține detaliile sesiunii.
64) Precizați diferența dintre autentificare și autorizare.
Autentificarea înseamnă confirmarea identităților utilizatorului prin intermediul acreditărilor, în timp ce autorizarea se referă la obținerea accesului la sistem.
65) Explicați ascultătorilor.
Ascultătorii sunt obișnuiți să gestioneze evenimente și excepții. Cel mai comun ascultător din Laravel pentru evenimentul de conectare este LoginListener.
66) Ce sunt clasele de politici?
Clasele de politici includ logica de autorizare a aplicației Laravel. Aceste clase sunt utilizate pentru un anumit model sau resursă.
67) Cum se anulează ultima migrare?
Folosiți necesitatea de a utiliza comanda artizanală pentru a anula ultima migrare.
68) Ce vrei să spui prin Laravel Dusk?
Laravel Dusk este un instrument care este folosit pentru testare JavaAplicații cu scripturi. Oferă automatizare puternică a browserului și API de testare.
69) Explicați ecoul Laravel.
Este o JavaBibliotecă de scripturi care face posibilă abonarea și ascultarea canalelor evenimente Laravel. Puteți utiliza managerul de pachete NPM pentru a instala echo.
70) Ce este metoda face?
Dezvoltatorii Laravel pot folosi metoda make pentru a lega o interfață pentru a crea o clasă. Această metodă returnează o instanță a clasei sau a interfeței. Laravel injectează automat dependențe definite în constructorul de clasă.
71) Explicați răspunsul în Laravel.
Toate controlerele și rutele ar trebui să returneze un răspuns care să fie trimis înapoi în browserul web. Laravel oferă diverse modalități de a returna acest răspuns. Cel mai de bază răspuns este returnarea unui șir de la controler sau rută.
72) Ce este domeniul de aplicare al interogării?
Este o caracteristică a Laravel în care putem reutiliza interogări similare. Nu este nevoie să scriem din nou aceleași tipuri de interogări în proiectul Laravel. Odată ce domeniul de aplicare este definit, trebuie doar să apelați metoda scopului atunci când interogați modelul.
73) Explicați gospodăria din Laravel.
Laravel Homestead este cutia oficială, de unică folosință și pre-ambalată, un mediu de dezvoltare puternic, fără a instala HHVM, un server web și PHP pe computer.
74) Ce este spațiul de nume în Laravel?
Un spațiu de nume permite unui utilizator să grupeze funcțiile, clasele și constantele sub un anumit nume.
75) Ce este Laravel Forge?
Laravel Forge ajută la organizarea și proiectarea unei aplicații web. Deși producătorii framework-ului Laravel au dezvoltat această taxă, acesta poate automatiza implementarea fiecărei aplicații web care funcționează pe un server PHP.
Întrebări și răspunsuri la interviu Laravel pentru peste 10 ani de experiență
76) Precizați diferența dintre CodeIgniter și Laravel.
Parametru | CodeIgniter | Laravel |
---|---|---|
Suport pentru ORM | CodeIgniter nu acceptă maparea obiect-relațională. | Laravel acceptă ORM. |
Furnizați autentificare | Oferă autentificarea utilizatorului. | Are autentificarea utilizatorului încorporată. |
Paradigma de programare | Este orientat pe componente. | Este orientat pe obiecte. |
Suport pentru alte sisteme de management al bazelor de date | Aceasta susține Microsoft SQL Server, ORACLE, MySQL, IBM DB2, PostgreSQLcompatibil, JDBC și orientDB. | Aceasta susține PostgreSQL, MySQL, MongoDB și Microsoft BI, dar CodeIgniter acceptă în plus și alte baze de date, cum ar fi Microsoft SQL Server, DB2, Oracle, Etc |
Asistență HTTPS | CodeIgniter acceptă parțial HTTPS. Prin urmare, programatorii pot folosi URL-ul pentru a securiza procesul de transmitere a datelor prin crearea PATS. | Laravel acceptă rute HTTPS personalizate. Programatorii pot crea o adresă URL specifică pentru ruta HTTPS pe care au definit-o. |
77) Ce este un observator?
Model Observers este o caracteristică a lui Laravel. Este folosit pentru a face grupuri de ascultători de evenimente pentru un model. Numele de metode ale acestor clase descriu evenimentul Elocvent. Metodele claselor de observatori primesc modelul ca argument.
78) La ce folosește directorul bootstrap?
Este folosit pentru a inițializa un proiect Laravel. Acest director de bootstrap conține fișierul app.php care este responsabil pentru bootstrap-ul cadrului.
79) Care este durata implicită de expirare a sesiunii?
Durata implicită de expirare a sesiunii Laravel este de 2 ore.
80) Cum să eliminați un fișier de clasă respectat?
Utilizați comanda clear-compiled pentru a elimina fișierul de clasă compilat.
81) În ce folder este plasat robot.txt?
Fișierul Robot.txt este plasat în directorul Public.
82) Explicați ruta API.PHP.
Rutele sale corespund unui cluster API. Are middleware API care este activat implicit în Laravel. Aceste rute nu au nicio memorie de stare și cereri încrucișate sau nu au sesiuni.
83) Cum se numește ruta?
Ruta de nume este o metodă care generează calea de rutare. Înlănțuirea acestor rute poate fi selectată prin aplicarea metodei numelui pe descrierea rutei.
84) ce este software-ul open source?
Software-ul open-source este un software al cărui cod sursă este disponibil gratuit. Codul sursă poate fi partajat și modificat în funcție de cerințele utilizatorului.
85) Explicați conectarea în Laravel.
Este o tehnică în care jurnalul de sistem a generat erori. Conectarea este utilă pentru a crește fiabilitatea sistemului. Laravel acceptă diverse moduri de înregistrare, cum ar fi modurile syslog, zilnic, unic și jurnal de erori.
86) Ce este localizarea?
Este o caracteristică a Laravel care acceptă diverse limbi pentru a fi utilizate în aplicație. Un dezvoltator poate stoca șiruri de limbi diferite într-un fișier, iar aceste fișiere sunt stocate în folderul resurse/vizualizări. Dezvoltatorii ar trebui să creeze un folder separat pentru fiecare limbă acceptată.
87) Definiți hashing în Laravel.
Este metoda de conversie a textului într-o cheie care arată textul original. Laravel folosește fațada Hash pentru a stoca parola în siguranță într-o manieră hash.
88) Explicați conceptul de criptare și decriptare în Laravel.
Este un proces de transformare a oricărui mesaj folosind niște algoritmi în așa fel încât al treilea utilizator să nu poată citi informațiile. Criptarea este destul de utilă pentru a vă proteja informațiile sensibile de un intrus.
Criptarea se realizează folosind un proces de criptare. Mesajul care urmează să fie criptat numit ca mesaj simplu. Mesajul obținut după criptare este denumit mesaj cifrat. Când convertiți textul cifrat în text simplu sau mesaj, acest proces se numește decriptare.
89) Cum se partajează date cu vizualizări?
Pentru a transmite date către toate vizualizările din Laravel, utilizați metoda numită share(). Această metodă ia două argumente, cheie și valoare.
În general, metoda share() este apelată de la metoda de pornire a furnizorului de servicii de aplicații Laravel. Un dezvoltator poate folosi orice furnizor de servicii, AppServiceProvider sau propriul nostru furnizor de servicii.
90) Explicați ruta web.php.
Web.php este ruta publică bazată pe „browser”. Această rută este cea mai comună și este cea care este lovită de browserul web. Acestea rulează prin grupul de middleware web și, de asemenea, conțin facilități pentru protecția CSRF (care ajută la apărarea împotriva atacurilor și hackurilor rău intenționate bazate pe formulare) și, în general, conțin un grad de „stare” (prin aceasta mă refer că folosesc sesiuni).
91) Cum se generează o cerere în Laravel?
Utilizați următoarea comandă artizanală în Laravel pentru a genera cererea:
php artisan make:request UploadFileRequest
Aceste întrebări de interviu vă vor ajuta, de asemenea, în viva (orale)