40 php laravel interview questions
Läs den här handledningen för att förbereda dig för din kommande intervju och lära dig svaren på populära och vanliga Laravel-intervjufrågor:
I Laravel Collection och Laravel Forge handledning av Laravel Handledningsserie , vi lärde oss om Laravel Collection och dess metoder med exempel och Laravel Forge med fördelar och prissättning.
Detta är den sista handledningen i Laravel-serien där vi har gett svar på viktiga frågor som ställts i Laravel-intervjuer.
Vi hoppas att denna handledning hjälper dig att möta dina intervjuer tryggare. Vi har fokuserat på båda Laravel 7 och Laravel 8 versioner i denna handledning.
Låt oss börja!
Vanliga frågor om Laravel-intervju
F # 1) Vad är Laravel?
vilket etl-verktyg som är bäst på marknaden
Svar : Laravel är en gratis och öppen källkod PHP-ramverk det är används för att utveckla komplexa webbapplikationer . Den stöder Model-View-Controller (MVC) design mönster.
Laravel-ramverket är också mest populära PHP-ramverket bland webbutvecklare år 2020.
F # 2) Vilken är den senaste versionen av Laravel?
Svar : Laravel 8 är den senaste versionen.
F # 3) Vad är den minsta kompatibla versionen av PHP för Laravel 7 och 8?
Svar : Den minsta kompatibla PHP-versionen för Laravel 7 är PHP 7.2.5 och för Laravel 8 är PHP 7.3.0
F # 4) Vilka är de populäraste funktionerna i Laravel?
Svar : Det finns flera populära funktioner i Laravel. Dessa listas nedan.
- Välgörande ORM
- Frågeställare
- Omvänd routing
- Klass automatisk laddning
- Viliga kontroller
- Bladmallmotor
- Lat samling
- Enhetstestning
- Sådd av databas
- Migrationer
F # 5) Vilka är de nya funktionerna i Laravel 8?
Svar : Laravel 8 släpptes den 8 september 2020 med nya tilläggsfunktioner och några ändringar av de befintliga funktionerna.
Följande lista visar de nya funktionerna i Laravel 8:
- Laravel Jetstream
- Modeller katalog
- Modell fabriksklasser
- Migration squashing
- Tidtestande hjälpare
- Dynamiska bladkomponenter
- Hastighetsbegränsande förbättringar
F # 6) Stöder Laravel Bootstrap?
Svar : Ja Laravel stöder Bootstrap CSS-ramverket.
F # 7) Vilka är fördelarna med att använda Laravel-ramverket för att bygga komplexa webbapplikationer?
Svar : Det finns många fördelar med att använda Laravel-ramverket och några av dem listas nedan:
- Laravel är gratis att använda.
- Konfigurationen av applikationen är enkel och okomplicerad.
- Ramverket stöder MVC-arkitekturen (Model-View-Controller).
- Inbyggda moduler och bibliotek från Laravel hjälper till att påskynda utvecklingsprocessen.
- Prestandan för Laravel-applikationer är hög.
- Routing är enkelt.
- Den har en funktion som heter Eloquent ORM som används för att hantera databasåtgärder.
- Den har en mallmotor som heter Blade.
- Laravel har en inbyggd anläggning för att stödja enhetstester.
- Gemenskapens stöd är högt.
F # 8) Nämn några konkurrenter till Laravel?
Svar : Följande lista visar de bästa konkurrenterna. De är alla bland de 10 bästa PHP-ramarna 2020.
- Codeigniter
- Symfony
- Detta
- CakePHP
- Zend Framework
- Phalcon
- FuelPHP
F # 9) Vilka är skillnaderna mellan ramarna för Laravel och CodeIgniter?
Svar : Det finns flera skillnader mellan ramarna för Laravel och CodeIgniter, och några huvudskillnader visas i nedanstående tabell.
Laravel Framework | CodeIgniter Framework |
---|---|
Lätt att utveckla REST API: er | Inte lätt att utveckla REST API: er |
Relationellt objektorienterat | Objektorienterad |
Stöder anpassade HTTPS-rutter | Stöder inte HTTPS-rutter helt |
Har autentiseringsklassfunktioner | Inga inbyggda autentiseringsfunktioner |
Har en inbyggd enhetstestfunktion | Ingen inbyggd enhetstestfunktion |
Använd bladmallar | Använder inte bladmallar |
Inte lätt att lära sig för nybörjare | Lätt att lära sig för nybörjare |
Stöder ORM | Stöder inte ORM |
F # 10) Vad är MVC-arkitektur?
Svar : MVC-arkitektur är en design mönster som används för att utveckla webbapplikationer. Den består av tre komponenter som heter Modell , Se och Kontroller . MVC designmönster hjälper också till påskynda utvecklingen av webbapplikationen.
- Modell: I MVC-arkitektur, brevet M står för Modeller . Modellen är den centrala komponenten i MVC-designmönstret. den hanterar data i applikationen.
- Se: I MVC-arkitektur, brevet V står för Visningar . En utsikt visar data för användaren .
- Kontroller: I MVC-arkitektur, brevet C står för Kontroller . En styrenhet är van vid hantera användarförfrågningar .
Nedanstående diagram visar interaktionerna inom MVC-designmönstret.
F # 11) Vilket är kommandot du kan använda för att kontrollera om du har installerat kompositören på din dator?
Svar : Du kan köra följande kommando i kommandotolken för att kontrollera om du har installerat kompositören på din dator.
composer
F # 12) Vilka är serverkraven för installation av Laravel version 8?
Svar : Installerar Laravel Homestead kommer att fylla serverkrav för installation av Laravel 8.
Om du inte använder Laravel Homestead bör din server uppfylla följande krav:
- PHP-version 7.3 eller högre version
- PHP-tillägg
- BCMath PHP-tillägg
- Ctype PHP-tillägg
- Fileinfo PHP-tillägg
- JSON PHP-tillägg
- Mbstring PHP-tillägg
- OpenSSL PHP-tillägg
- PDO PHP-tillägg
- Tokenizer PHP-tillägg
- XML PHP-tillägg
F # 13) Tänk på en situation där du redan har installerat Laravel 8 på din maskin och vill installera ett Laravel 7-projekt utan att avinstallera Laravel 8 från din maskin. Så, hur ska du installera ett Laravel 7-projekt?
Svar : Det är enkelt. Vi kan köra följande kommando i kommandotolken för att installera ett Laravel 7-projekt.
composer create-project --prefer-dist laravel/laravel name_of_the_project '7.*'
Notera : Vi måste ange den Laravel-version som vi behöver installera enligt ovan.
F # 14) Hur kan du kontrollera den installerade Laravel-versionen av ett projekt.
Svar : Gå till projektkatalogen i kommandotolken och kör följande kommando:
php artisan --version
Alternativt kan du också köra följande kommando.
php artisan -v
F # 15) Vad används hantverkarkommandot för att få en lista över tillgängliga kommandon?
Svar : Kör följande kommando i kommandotolken för att få en lista över tillgängliga kommandon.
php artisan list
F # 16) Beskriv kort projektstrukturen för ett typiskt Laravel-projekt.
Svar : Följande lista visar projektstrukturen för ett typiskt Laravel-projekt.
- appmapp: Appmappen är platsen där applikationens källkod finns . Den innehåller fem undermappar med namnet Trösta mapp, Undantag mapp, Http mapp, Modeller mapp och Leverantörer mapp. Dessa undermappar innehåller undantagshanterare , styrenheter, mellanprogramvara, tjänsteleverantörer och modeller.
Notera : I Laravel 7 finns det ingen specifik mapp som heter Modeller, och alla modellfiler lagras i app mapp istället för app / Modeller-mapp.
- bootstrap-mapp: Bootstrap-mappen innehåller bootstrap-filer .
- konfigurationsmapp: Konfigurationsmappen innehåller konfigurationsfiler .
- databas mapp: Databasmappen innehåller databasfiler . Den innehåller tre undermappar som heter fabriker mapp, migrationer mapp och såmaskiner mapp och .gitignore fil. Dessa undermappar innehåller en stor uppsättning data, databasmigrationer och frön .
- offentlig mapp: Den offentliga mappen innehåller filer som är vana vid initialisera applikationen .
- resursmapp: Resursmappen innehåller HTML, CSS och JavaScript-filer . Den innehåller fyra undermappar med namnet css mapp, js mapp, lang mapp och utsikt mapp.
- ruttmapp: Ruttmappen innehåller ruttdefinitioner .
- lagringsmapp: Lagringsmappen innehåller cachefiler, sessionsfiler osv .
- tester mapp: Testmappen innehåller testfiler som enhetstestfiler.
- Säljare mapp: Leverantörsmappen innehåller alla kompositörberoende paket .
- .env fil: .Env-filen innehåller miljövariabler .
- composer.json-fil: Composer.json-filen innehåller beroenden .
- package.json fil: Package.json-filen är för frontend , och det är liknar filen composer.json .
- och några fler filer
F # 17) Vad är buntar i Laravel?
Svar : Buntar är vana vid öka Laravels funktionalitet . I Laravel är buntar populärt kända som paket . Det innehåller konfiguration, rutter, migreringar, vyer osv .
F # 18) Vad är routing?
Svar : Routing är processen att acceptera en begäran och skicka den till relevant funktion i styrenheten.
F # 19) Vilka är de två huvudsakliga routingsfilerna som finns i Laravel?
Svar : De två huvudsakliga routningsfilerna är,
- web.php filen i ruttmappen.
- api.php filen i ruttmappen.
F # 20) Vilka är de tillgängliga routermetoderna i Laravel?
Svar : Följande lista visar tillgängliga routermetoder i Laravel:
- Rutt :: get ($ uri, $ callback);
- Rutt :: post ($ uri, $ callback);
- Rutt :: put ($ uri, $ callback);
- Rutt :: patch ($ uri, $ callback);
- Rutt :: ta bort ($ uri, $ återuppringning);
- Rutt :: alternativ ($ uri, $ återuppringning);
F # 21) Hur skapar jag en rutt? Beskriv kort med ett exempel.
Svar : En rutt kan skapas av med hjälp av styrenheter eller genom lägga till koden direkt till rutten .
Följande exempel visar hur du skapar en rutt genom att lägga till koden direkt till rutten.
Exempel: Byt ut koden i rutter / web.php fil genom att lägga till följande kodsegment.
Kör sedan projektet i webbläsaren. Du får se Välkommen! som utgång.
F # 22) Hur många vilsam resurskontrollanter i Laravel, och vilka åtgärder hanteras av de vilande resurskontrollanterna?
Svar : Det finns sju vilsam resurskontroll i Laravel.
Följande tabell visar de åtgärder som hanteras av de vilande resurskontrollerna i en Laravel-applikation.
Verb Väg Handling Ruttnamn Använda sig av RADERA / användare / {användare} förstöra användare. förstöra ta bort användare SKAFFA SIG / användare index användare.index få alla användare SKAFFA SIG / användare / skapa skapa användare. skapa skapa en ny användare POSTA / användare Lagra användare. lagra lagra användarinformation SKAFFA SIG / användare / {användare} show användare.show få användarinformation SKAFFA SIG / användare / {användare} / redigera redigera användare. redigera redigera användare PUT / PATCH / användare / {användare} uppdatering användare. uppdatera uppdatera användare
F # 23) Vad är Middleware?
Svar : Middleware beter sig som en bro och en filtreringsmekanism mellan en begäran och ett svar .
F # 24) Hur identifierar jag en bladmallfil?
Svar : Vanligtvis finns alla bladmallfiler inuti resurser / vyer mapp. Bladfiler har .blade.php förlängning.
F # 25) Ange platsen där modellfiler finns i en typisk Laravel-applikation?
Svar : Det finns en skillnad på platsen där modellfiler lagras i en Laravel 7-applikation och en Laravel 8-applikation.
I ett Laravel 7-program finns vanligtvis alla modellfiler inuti app mapp.
I ett Laravel 8-program finns vanligtvis alla modellfiler inuti app / modeller mapp.
F # 26) Vad är sådd?
Svar : Utvecklare behöver testdata när de utvecklar en applikation. Seeding är införande av data i databasen för teständamål.
F # 27) Vilka databaser stöds av Laravel-ramverket?
hur man använder svn i förmörkelse
Svar : Följande lista nedan visar databaser som stöds:
- MySQL 5.6+
- PostgreSQL (Postgres) 9.4+
- SQLite 3.8.8+
- SQL Server 2017+
F # 28) Vilka är de samlade metoderna som frågebyggaren i Laravel tillhandahåller?
Svar : Följande lista visar de samlade metoderna som tillhandahålls av frågebyggaren:
- räkna()
- max ()
- min ()
- genomsnitt ()
- belopp()
F # 29) Nämn några vanliga hantverkarkommandon som används i Laravel? Ange också funktionen för varje kommando.
Svar : Följande lista visar några av de viktiga hantverkarkommandon som används i Laravel.
- php hantverksväg: lista: Detta hantverkskommando används för att lista alla registrerade rutter.
- php artisan make: controller Controller_Name : Det här hantverkarkommandot används för att skapa en styrenhet.
- php artisan make: middleware Middleware_Name : Det här hantverkarkommandot används för att skapa en mellanprogramvara.
- php artisan make: migration create_ tabellnamn _tabell: Det här hantverkarkommandot används för att skapa en migration.
- php artisan migrate: Det här hantverkarkommandot används för att köra databasmigreringar.
- php artisan tinker: Det här hantverkarkommandot används för att interagera med din applikation.
- php artisan make: såmaskin Seeder_Name: Det här hantverkarkommandot används för att skapa en såmaskin.
- php artisan make: modell Modellnamn: Det här hantverkarkommandot används för att skapa en modell.
- php artisan make: mail Mail_Class_Name: Det här hantverkarkommandot används för att skapa en e-postklass.
F # 30) Rahul skrev följande valideringsregler för ett filöverföringsfält.
$ request-> validate ((‘file’ => ‘required | mimes: doc, pdf | max: 2048’));
Förklara kort ovanstående valideringsregler.
Svar : I ovanstående validering använde Rahul tre valideringsregler. Dom är,
- nödvändig: De nödvändig valideringsregeln hindrar användaren från att skicka in formuläret utan att ladda upp en fil . Med andra ord, filfält är obligatoriskt .
- mimes: doc, pdf: De mimes: doc, pdf valideringsregeln tillåter bara användaren att ladda upp en fil som har .doc förlängning eller .pdf förlängning.
- max: 2048: De max: 2048 valideringsregel tillåter bara användaren att ladda upp en fil med en maximal storlek på 2048 byte .
F # 31) Vad är syftet med en session i Laravel?
Svar : En session används för att lagra data och håller reda på användarna.
F # 32) Vad är Laravel-autentisering?
Svar : Laravel-autentisering är processen för verifiera applikationsanvändare . Det kan uppnås genom identifiera användarens användarnamn och lösenord . Vissa andra parametrar kan också användas för autentisering. Om användaruppgifterna är giltiga är användaren det autentiserad .
Laravel använder vakter och leverantörer för autentiseringsprocessen. Vakter definiera hur användare autentiseras för varje begäran medan leverantörer definiera hur användare hämtas från din ihållande lagring .
F # 33) Vad är en CSRF-token?
Svar : CSRF är en förkortning för Förfalskning på begäran över flera platser . En CSRF-token är till unikt värde som genereras av serversidan av applikationen och skickas till klienten .
CSRF-token hjälper till skydda webbapplikationer från attacker som tvingar en användare att utföra en oönskad åtgärd (allmänt känd som CSRF-attacker) .
Följande kodsegment visar hur en CSRF-token kan användas när du skapar ett formulär i Laravel.
@csrf ...
F # 34) Gör en jämförelse mellan GET- och POST-metoderna?
Svar : Det finns flera skillnader mellan GET- och POST-metoder, och några av de viktiga skillnaderna listas i tabellen nedan.
GET-metod POST-metod Förfrågan är möjlig att bokmärka Det går inte att bokmärka förfrågan Begär data från en specifik resurs Skicka data till en server Parametrar ingår i webbadressen Parametrar ingår i kroppen Data är synlig i webbadressen Data är inte synlig i webbadressen Endast tillåtna tecken är ASCII-tecken Både ASCII-tecken och binär data är tillåtna Det finns en begränsning av datalängden Ingen begränsning av datalängden Begäran finns kvar i webbläsarhistoriken Begäran finns inte kvar i webbläsarhistoriken Kan cachas Kan inte cachas Säkerhet är mindre jämfört med POST-metoden Säkerheten är hög jämfört med GET-metoden Kan inte användas för att skicka känslig data som lösenord Kan användas för att skicka känsliga data som lösenord
F # 35) Vad är auktorisering?
Svar : Auktorisering är processen för verifiera om autentiserade användare har nödvändigt tillstånd för åtkomst till de begärda resurserna . Laravel använder grindar för auktoriseringsprocessen.
F # 36) Namnge några HTTP-svarsstatuskoder?
Svar : HTTP-statuskoder hjälper till att verifiera om en viss HTTP-begäran har slutförts.
HTTP-förfrågningar kategoriseras i fem olika grupper. Dom är:
- Informationssvar (1XX)
- Framgångsrika svar (2XX)
- Omdirigeringar (3XX)
- Klientfel (4XX)
- Serverfel (5XX)
a) Informationssvar: Statuskoder under denna kategori anger om begäran mottogs och förstods.
Följande lista nedan visar informationssvar.
- 100: Fortsätta
- 101: Byt protokoll
- 102: Bearbetning
- 103: Tidiga tips
b) Framgångsrika svar: Statuskoder under denna kategori anger om begäran mottogs, förstods och accepterades.
Följande lista nedan visar framgångsrika svar.
- 200: OK
- 201: Skapad
- 202: Accepterad
- 203: Icke-auktoritär information
- 204: Inget innehåll
- 205: Återställ innehåll
- 206: Delvis innehåll
- 207: Multi-Status
- 208: Redan rapporterad
- 226: Jag är van
c) Omdirigeringar: Statuskoder under denna kategori indikerar att ytterligare åtgärder måste vidtas för att slutföra begäran.
Följande lista nedan visar omdirigeringar.
- 300: Flera val
- 301: flyttad permanent
- 302: Hittades
- 303: Se Övrigt
- 304: Ej modifierad
- 305: Använd proxy
- 306: Byt proxy
- 307: Tillfällig omdirigering
- 308: Permanent omdirigering
d) Kundfel: Statuskoder under denna kategori indikerar fel orsakade av klienten.
Följande lista nedan visar klientfel.
- 400: Dålig förfrågan
- 401: Obehörig
- 402: Betalning krävs
- 403: Förbjuden
- 404: Hittades inte
- 405: Metoden är inte tillåten
- 406: Inte acceptabelt
- 410: Borta
e) Serverfel: Statuskoder under denna kategori indikerar fel orsakade av servern.
Följande lista nedan visar serverfel.
- 500: Internt serverfel
- 501: Ej implementerad
- 502: Dålig gateway
- 503: Tjänsten är inte tillgänglig
- 504: Gateway timeout
Notera : Klick här för att se hela uppsättningen av HTTP-svarskoder.
F # 37) Vilka är de vanligaste verktygen som används för att skicka e-post i Laravel?
Svar : Följande lista nedan visar några vanliga verktyg som kan användas för att skicka e-post i Laravel.
- Mailtrap
- Pistol
- Mailchimp
- Mandrill
- Amazon Simple Email Service (SES)
- Swiftmailer
- Poststämpel
F # 38) Beskriv kortfattat några vanliga insamlingsmetoder i Laravel.
Svar : Följande lista visar några vanliga insamlingsmetoder:
en första() - Denna metod returnerar det första elementet i samlingen.
Exempel:
collect((1, 2, 3))->first(); // It returns 1 as the output.
b) unik (): Den här metoden returnerar alla unika artiklar i samlingen.
Exempel:
$collection = collect((1, 3, 2, 2, 4, 4, 1, 2, 5)); $unique = $collection->unique(); $unique->values()->all(); // It returns (1, 2, 3, 4, 5) as the output.
c) innehåller (): Denna metod kontrollerar om samlingen innehåller ett visst objekt.
Exempel:
$collection = collect(('student' => 'Sachin', 'id' => 320)); $collection->contains('Sachin'); // It returns true as the output. $collection->contains('Rahul'); // It returns false as the output.
d) få (): Denna metod returnerar artikeln med en viss nyckel.
Exempel:
$collection = collect(('car' => 'BMW', 'colour' => 'black')); $value = $collection->get('car'); // It returns 'BMW' as the output.
e) toJson (): Denna metod omvandlar samlingen till en JSON-seriesträng.
Exempel:
$collection = collect(('student' => 'Sachin', 'id' => 320)); $collection->toJson(); // It returns '{'student':'Sachin','id':320}' as the output.
f) toArray (): Denna metod omvandlar samlingen till en vanlig PHP-matris.
Exempel:
$collection = collect(('student' => 'Sachin', 'id' => 320)); $collection->toArray(); // It returns ('student' => 'Sachin','id' => 320,) as the output.
g) gå med (): Den här metoden sammanfogar samlingens värden med en sträng.
Exempel:
collect(('x', 'y', 'z'))->join(', '); // It returns 'x, y, z' as the output. collect(('x', 'y', 'z'))->join(', ', ', and '); // It returns 'x, y, and z' as the output. collect(('x', 'y'))->join(', ', ' and '); // It returns 'x and y' as the output. collect(('x'))->join(', ', ' and '); // It returns 'x' as the output. collect(())->join(', ', ' and '); // It returns '' as the output.
h) isNotEmpty (): Den här metoden returnerar true om samlingen inte är tom. annars returnerar den falskt.
Exempel:
collect(())->isNotEmpty(); // It returns false as the output.
i) Implodera (): Denna metod sammanfogar objekten i en samling.
Exempel:
$collection = collect(( ('student_id' => 1, 'name' => 'Bob'), ('student_id' => 2, 'name' => 'David'), ('student_id' => 3, 'name' => 'Peter'), )); $collection->implode('name', ', '); // It returns 'Bob, David, Peter' as the output.
j) sista (): Den här metoden returnerar det sista elementet i samlingen.
Exempel:
Ex: collect((1, 2, 3))->last(); // It returns 3 as the output.
F # 39) Vad är officiella paket i Laravel?
Svar : Följande lista nedan visar de officiella paketen för Laravel 8:
- Kassör (rand)
- Kassör (paddla)
- Kassör (Mollie)
- Skymning
- Sändebud
- Horisont
- Jetstream
- Pass
- Helgedom
- spana
- Socialite
- Teleskop
Följande lista nedan visar de officiella paketen för Laravel 7:
lägg till sträng till strängmatris Java
- Kassör (rand)
- Kassör (paddla)
- Kassör (Mollie)
- Skymning
- Sändebud
- Horisont
- Pass
- Helgedom
- spana
- Socialite
- Teleskop
F # 40) Vad är Laravel Forge?
Svar : Det är en serverhanteringsverktyg för PHP-applikationer. Det är ett bra alternativ om du inte planerar att hantera dina egna servrar.
Notera : Klick här (den officiella sidan för Laravel Forge) för att lära dig mer om Laravel Forge.
F # 41) Vad är Laravel Vapor?
Svar : Det är en helt serverlös distributionsplattform . Den drivs av Amazon Web Services (AWS).
Notera : Klick här (den officiella sidan av Laravel Vapor) för att lära dig mer om Laravel Vapor.
Slutsats
Laravel är en av de mest populära webbramarna bland webbutvecklare. Även om det finns några betydande förändringar från Laravel version 7 till Laravel version 8, är de flesta funktionerna fortfarande desamma.
Laravel hjälper utvecklare att bygga kreativa och tillförlitliga webbapplikationer effektivt med hjälp av dess funktioner som routing, controllers, middleware, vyer, bladmallar, vältaliga modeller, migreringar, sådd, hantverkare, tinker, filbehörigheter, sessioner, autentisering, auktorisering, samlingar och många fler.
Vi har kommit till slutet av detta Laravel handledning för nybörjare serier. Vi tror att du har gillat att lära dig i den här handledningsserien och fått utmärkt kunskap. Hoppas vi ses igen i en annan handledningsserie.
Vi önskar dig all lycka till din kommande intervju !!
<< PREV Tutorial | FÖRSTA självstudier
Rekommenderad läsning
- PHP Laravel Handledning för nybörjare: Vad är Laravel Framework
- Laravel formulär och valideringsregler med exempel
- Laravel Collection And Laravel Forge Tutorial
- 50 bästa PHP-intervjufrågor och svar (för ALLA)
- Topp 40 Java 8 intervjufrågor och svar (Viktigast)
- De bästa JSON-intervjufrågorna och -svaren
- Topp 40 C-programmeringsintervjuer och frågor
- Topp 40 populära J2EE intervjufrågor och svar du bör läsa