Voici les questions fréquemment posées sur les entretiens Laravel et PHP pour les débutants ainsi que les candidats expérimentés pour obtenir le bon emploi.
1) Qu'est-ce que Laravel?
Laravel est un framework PHP open-source largement utilisé. La plate-forme était destinée au développement d'applications Web en utilisant le modèle architectural MVC. Laravel est publié sous la licence MIT.
Par conséquent, son code source est hébergé sur GitHub. C'est un framework PHP fiable car il suit des règles de langage expressives et précises.
2) Définissez le compositeur.
Il s'agit d'un gestionnaire de packages au niveau de l'application pour PHP. Il fournit un format standard pour la gestion des dépendances et des bibliothèques de logiciels PHP.
3) Qu'est-ce qu'un middleware HTTP?
L'intergiciel HTTP est une technique de filtrage des requêtes HTTP. Laravel inclut un middleware qui vérifie si l'utilisateur de l'application est authentifié ou non.
4) Nommez les méthodes d'agrégation du générateur de requêtes.
Les méthodes d'agrégats du générateur de requêtes sont: 1) max (), 2) min (), 3) sum (), 4) avg () et 5) count ().
5) Qu'est-ce qu'un itinéraire?
Une route est essentiellement un point de terminaison spécifié par un URI (Uniform Resource Identifier). Il agit comme un pointeur dans l'application Laravel.
Le plus souvent, une route pointe simplement vers une méthode sur un contrôleur et dicte également quelles méthodes HTTP sont capables d'atteindre cet URI.
6) Pourquoi utiliser Route?
Les routes sont stockées dans des fichiers sous le dossier / routes dans le répertoire racine du projet. Par défaut, il existe quelques fichiers différents correspondant aux différents «côtés» de l'application (les «côtés» proviennent de la méthodologie de l'architecture hexagonale).
7) Qu'entendez-vous par bundles?
Dans Laravel, les bundles sont appelés packages. Ces packages sont utilisés pour augmenter les fonctionnalités de Laravel. Un package peut avoir des vues, une configuration, des migrations, des itinéraires et des tâches.
8) Expliquez les répertoires importants utilisés dans une application Laravel courante.
Les répertoires utilisés dans une application Laravel courante sont:
- App /: Il s'agit d'un dossier source dans lequel réside le code de notre application. Tous les contrôleurs, stratégies et modèles se trouvent dans ce dossier.
- Config /: contient les fichiers de configuration de l'application. Celles-ci ne sont généralement pas modifiées directement, mais reposent plutôt sur les valeurs définies dans le fichier .env (environnement) à la racine de l'application.
- Base de données /: héberge les fichiers de base de données, y compris les migrations, les semences et les usines de test.
- Public /: dossier accessible au public contenant les ressources compilées et bien sûr un fichier index.php.
9) Qu'est-ce qu'un contrôleur?
Un contrôleur est le "C" dans l'architecture "MVC" (Model-View-Controller), sur lequel Laravel est basé.
10) Expliquez le routage inversé dans Laravel.
Le routage inversé est une méthode de génération d'URL basée sur un symbole ou un nom. Cela rend votre application Laravel flexible.
12) Expliquez les traits de Laravel.
Les traits Laravel sont un groupe de fonctions que vous incluez dans une autre classe. Un trait est comme une classe abstraite. Vous ne pouvez pas instancier directement, mais ses méthodes peuvent être utilisées dans la classe concreate.
13) Expliquez le concept des contrats à Laravel.
Il s'agit d'un ensemble d'interfaces du framework Laravel. Ces contrats fournissent des services de base. Les contrats définis dans Laravel incluent la mise en œuvre correspondante du cadre.
14) Comment allez-vous enregistrer les prestataires de services?
Vous pouvez enregistrer les fournisseurs de services dans le fichier de configuration config / app.php qui contient un tableau dans lequel vous pouvez mentionner le nom de classe du fournisseur de services.
15) Où allez-vous définir les façades de Laravel?
Toutes les façades de Laravel ont été définies dans l'espace de noms Illuminate \ Support \ Facades.
16) Indiquez la différence entre la méthode get et post.
La méthode Get vous permet d'envoyer une quantité limitée de données dans l'en-tête. La publication vous permet d'envoyer une grande quantité de données dans le corps.
17) Répertoriez les packages par défaut de Laravel 5.6.
Les packages par défaut de Laravel 5.6 sont: 1) Envoy, 2) Passport, 3) Socialite, 4) Cashier, 5) Horizon et 6) Scout.
18) Qu'est-ce que le conteneur de service à Laravel?
Le conteneur de service est un outil utilisé pour effectuer l'injection de dépendances dans Laravel.
19) Comment activer le journal des requêtes dans Laravel?
Vous pouvez utiliser la méthode enableQueryLog pour activer le journal des requêtes dans Laravel.
20) Expliquez le concept des événements à Laravel.
Un événement est une occurrence ou une action qui vous aide à vous abonner et à écouter les événements qui se produisent dans l'application Laravel. Certains des événements sont déclenchés automatiquement par Laravel lorsqu'une activité se produit.
21) Expliquez l'injection de dépendances et leurs types.
C'est une technique dans laquelle un objet dépend d'un autre objet. Il existe trois types d'injection de dépendances: 1) injection de constructeur, 2) injection de setter et 3) injection d'interface.
22) Quels sont les avantages d'utiliser Laravel?
Voici les avantages importants de Laravel:
- Laravel dispose d'un moteur de modèle de lame pour créer des mises en page dynamiques et augmenter les tâches de compilation.
- Réutilisez le code sans aucun tracas.
- Laravel vous permet d'appliquer des contraintes entre plusieurs objets DBM à l'aide d'un mécanisme de générateur de requêtes avancé.
- Le framework a une fonction de chargement automatique, vous ne faites donc pas de maintenance manuelle et de chemins d'inclusion
- Le framework vous aide à créer de nouveaux outils en utilisant le conteneur LOC.
- Laravel propose un système de contrôle de version qui facilite la gestion simplifiée des migrations.
23) Expliquer le concept de validation dans Laravel.
Les validations sont un concept important lors de la conception de toute application Laravel. Il garantit que les données sont toujours dans un format attendu avant d'être stockées dans la base de données. Laravel propose de nombreuses façons de valider vos données.
Le trait de contrôleur de base utilise une classe ValidatesRequests qui fournit une méthode utile pour valider les requêtes provenant de la machine cliente.
24) Que signifie ORM?
ORM signifie Object Relational Mapping
25) Comment réduire l'utilisation de la mémoire dans Laravel?
Lors du traitement d'une grande quantité de données, vous pouvez utiliser la méthode du curseur afin de réduire l'utilisation de la mémoire.
26) Liste des types de relations disponibles dans Laravel Eloquent.
Les types de relations dans Laravel Eloquent sont: 1) Un à un 2) Un à plusieurs 3) Plusieurs à plusieurs 4) A plusieurs à travers, et 5) Des relations polymorphes.
27) Nommez le moteur de modèle utilisé par Laravel.
Blade est un moteur de template puissant utilisé par Laravel.
28) Bases de données de noms prises en charge par Laravel.
Laravel prend en charge les bases de données suivantes:
- PostgreSQL
- serveur SQL
- SQLite
- MySQL
29) Pourquoi les migrations sont-elles importantes?
Les migrations sont importantes car elles vous permettent de partager des applications en maintenant la cohérence de la base de données. Sans migration, il est difficile de partager une application Laravel. Il vous permet également de synchroniser la base de données.
30) Définir Lumen
Lumen est un micro-framework. Il s'agit d'une version plus petite et plus rapide d'un bâtiment de services basés sur Laravel et d'API REST.
31) Expliquez l'artisan PHP
Un artisan est un outil en ligne de commande de Laravel. Il fournit des commandes qui vous aident à créer une application Laravel sans aucun problème.
32) Comment générer des URL?
Laravel a des aides pour générer des URL. Cela est utile lorsque vous créez un lien dans vos modèles et votre réponse API.
33) Quelle classe est utilisée pour gérer les exceptions?
Les exceptions Laravel sont gérées par la classe App \ Exceptions \ Handler.
34) Quels sont les codes d'erreur HTTP courants?
Les codes d'erreur HTTP les plus courants sont:
- Erreur 404 - S'affiche lorsque la page n'est pas trouvée.
- Erreur - 401 - S'affiche lorsqu'une erreur n'est pas autorisée
35) Expliquez couramment le générateur de requêtes dans Laravel.
Il s'agit d'un générateur de requêtes de base de données qui fournit une interface pratique et plus rapide pour créer et exécuter des requêtes de base de données.
36) A quoi sert la fonction dd ()?
Cette fonction est utilisée pour vider le contenu d'une variable dans le navigateur. La forme complète de dd est Dump and Die.
37) Liste des commandes artisanales courantes utilisées dans Laravel.
Laravel prend en charge les commandes artisanales suivantes:
- Artisan PHP vers le bas;
- Artisan PHP en place;
- PHP artisan make: contrôleur;
- Fabrication artisanale PHP: modèle;
- Fabrication artisanale PHP: migration;
- Fabrication artisanale de PHP: middleware;
38) Comment configurer un mail-in Laravel?
Laravel fournit des API pour envoyer un e-mail sur un serveur local et en direct.
39) Expliquez Auth.
Il s'agit d'une méthode d'identification des informations de connexion de l'utilisateur avec un mot de passe. Dans Laravel, il peut être géré avec une session qui prend deux paramètres 1) nom d'utilisateur et 2) mot de passe.
40) Faites la différence entre delete () et softDeletes ().
- delete (): supprime tous les enregistrements de la table de la base de données.
- softDeletes (): il ne supprime pas les données de la table. Il est utilisé pour marquer tout enregistrement comme supprimé.
41) Comment créer un fichier sitemap.xml en temps réel dans Laravel?
Vous pouvez créer toutes les pages Web d'un site Web pour informer le moteur de recherche du contenu du site d'organisation. Les robots d'exploration du moteur de recherche lisent ce fichier de manière intelligente pour explorer un site Web.
42) Expliquez le faux à Laravel.
C'est un type de module ou de packages qui sont utilisés pour créer de fausses données. Ces données peuvent être utilisées à des fins de test.
Il peut également être utilisé pour générer: 1) des nombres, 2) des adresses, 3) une date / heure, 4) des paiements et 5) du texte Lorem.
43) Comment allez-vous vérifier que la table existe ou dans la base de données?
Utilisez la fonction hasTable () Laravel pour vérifier que la table souhaitée existe ou non dans la base de données.
44) Quelle est la différence significative entre la fonction insert () et insertGetId () dans Laravel?
- Insert (): Cette fonction est simplement utilisée pour insérer un enregistrement dans la base de données. Il n'est pas nécessaire que l'ID soit auto-incrémenté.
- InsertGetId (): Cette fonction insère également un enregistrement dans la table, mais elle est utilisée lorsque le champ ID est auto-incrémenté.
45) Expliquez le concept d'enregistrement actif dans Laravel.
Dans l'enregistrement actif, mappez la classe à votre table de base de données. Il vous aide à gérer le fonctionnement du CRUD.
46) Liste des concepts de base dans Laravel?
Voici les concepts de base utilisés dans Laravel:
- Routage
- ORM éloquent
- Intergiciel
- Sécurité
- Mise en cache
- Modèle de lame
47) Définir un contrôleur implicite.
Les contrôleurs implicites vous aident à définir une route appropriée pour gérer l'action du contrôleur. Vous pouvez les définir dans le fichier route.php avec la méthode Route :: controller ().
48) Comment utiliser la table personnalisée dans Laravel Model?
Pour utiliser une table personnalisée, vous pouvez remplacer la propriété de la variable protégée $ table.
49) Qu'est-ce que le framework MVC?
Il s'agit du modèle, de la vue et du contrôleur:
- Modèle: Le modèle définit la logique pour écrire une application Laravel.
- Vue: il couvre la logique de l'interface utilisateur de l'application Laravel.
- Contrôleur: il fonctionne comme une interface entre le modèle et la vue. C'est une manière dont l'utilisateur interagit avec une application.
50) Définissez @include.
@include est utilisé pour charger plusieurs fichiers de vue de modèle. Cela vous aide à inclure une vue dans une autre vue. L'utilisateur peut également charger plusieurs fichiers dans une seule vue.
51) Expliquez le concept des cookies.
Les cookies sont de petits fichiers envoyés à partir d'un site Web particulier et stockés sur le PC par le navigateur de l'utilisateur pendant que l'utilisateur navigue.
52) Quel fichier est utilisé pour créer une connexion avec la base de données?
Pour créer une connexion avec la base de données, vous pouvez utiliser le fichier .env.
53) Qu'est-ce que Eloquent?
Eloquent est un ORM utilisé dans Laravel. Il fournit une implémentation d'enregistrements actifs simples fonctionnant avec la base de données. Chaque table de base de données a son modèle, qui sert à interagir avec la table.
54) Nommez quelques contrôleurs d'authentification intégrés de Laravel.
L'installation de Laravel a un ensemble intégré de contrôleurs d'authentification communs. Ces contrôleurs sont:
- S'inscrireContrôleur
- ConnexionContrôleur
- ResetPasswordController
- ForgetPasswordController
55) Définissez la garde Laravel.
Laravel guard est un composant spécial utilisé pour rechercher des utilisateurs authentifiés. L'entrée demandée est initialement acheminée via ce garde pour valider les informations d'identification entrées par les utilisateurs. Les gardes sont définis dans le fichier… /config/auth.php.
56) Quelle est la limite de débit de l'API Laravel?
C'est une caractéristique de Laravel. Il fournit un étranglement de la poignée. La limitation de débit aide les développeurs de Laravel à développer une application sécurisée et à empêcher les attaques DOS.
57) Expliquez les collections de Laravel.
Collections est une classe wrapper pour travailler avec des tableaux. Les requêtes Laravel Eloquent utilisent un ensemble des fonctions les plus courantes pour renvoyer le résultat de la base de données.
58) A quoi sert la façade DB?
La façade de base de données est utilisée pour exécuter des requêtes SQL telles que créer, sélectionner, mettre à jour, insérer et supprimer.
59) À quoi sert le mappage relationnel d'objets?
Le mappage relationnel d'objet est une technique qui aide les développeurs à adresser, accéder et manipuler des objets sans tenir compte de la relation entre l'objet et leurs sources de données.
60) Expliquez le concept de routage à Laravel.
Il permet d'acheminer toutes vos demandes d'application vers le contrôleur. Le routage Laravel reconnaît et accepte un identificateur de ressource uniforme avec une fermeture.
61) Qu'est-ce que l'Ajax à Laravel?
Ajax signifie JavaScript asynchrone et XML est une technique de développement Web utilisée pour créer des applications Web asynchrones. Dans Laravel, les fonctions response () et json () sont utilisées pour créer des applications Web asynchrones.
62) Qu'est-ce qu'une session à Laravel?
La session est utilisée pour transmettre les informations utilisateur d'une page Web à une autre. Laravel fournit divers pilotes comme un cookie, un tableau, un fichier, Memcached et Redis pour gérer les données de session.
63) Comment accéder aux données de session?
Les données de session sont accessibles en créant une instance de la session dans la requête HTTP. Une fois que vous obtenez l'instance, utilisez la méthode get () avec une "Key" comme paramètre pour obtenir les détails de la session.
64) Énoncez la différence entre authentification et autorisation.
L'authentification signifie la confirmation de l'identité des utilisateurs via des informations d'identification, tandis que l'autorisation se réfère à la collecte d'accès au système.
65) Expliquez aux auditeurs.
Les écouteurs sont habitués à gérer les événements et les exceptions. L'auditeur le plus courant dans Laravel pour l'événement de connexion est LoginListener.
66) Que sont les classes de polices?
Les classes de stratégies incluent la logique d'autorisation de l'application Laravel. Ces classes sont utilisées pour un modèle ou une ressource en particulier.
67) Comment restaurer la dernière migration?
Utilisez la commande need to use artisan pour annuler la dernière migration.
68) Qu'entendez-vous par Laravel Dusk?
Laravel Dusk est un outil utilisé pour tester les applications activées par JavaScript. Il fournit une puissante API d'automatisation du navigateur et de test.
69) Expliquez l'écho de Laravel.
C'est une bibliothèque JavaScript qui permet de s'abonner et d'écouter les chaînes d'événements Laravel. Vous pouvez utiliser le gestionnaire de packages NPM pour installer echo.
70) Qu'est-ce que la méthode make?
Les développeurs Laravel peuvent utiliser la méthode make pour lier une interface à une classe concreate. Cette méthode retourne une instance de la classe ou de l'interface. Laravel injecte automatiquement les dépendances définies dans le constructeur de classe.
71) Expliquez la réponse à Laravel.
Tous les contrôleurs et routes doivent renvoyer une réponse à renvoyer au navigateur Web. Laravel propose différentes manières de renvoyer cette réponse. La réponse la plus basique renvoie une chaîne du contrôleur ou de la route.
72) Qu'est-ce que la portée de la requête?
C'est une fonctionnalité de Laravel où nous pouvons réutiliser des requêtes similaires. Nous n'avons pas besoin de réécrire les mêmes types de requêtes dans le projet Laravel. Une fois la portée définie, appelez simplement la méthode de portée lors de l'interrogation du modèle.
73) Expliquez la ferme à Laravel.
Laravel homestead est la boîte de vagabond officielle, jetable et pré-emballée qui constitue un environnement de développement puissant sans installer HHVM, un serveur Web et PHP sur votre ordinateur.
74) Qu'est-ce que l'espace de noms dans Laravel?
Un espace de noms permet à un utilisateur de regrouper les fonctions, classes et constantes sous un nom spécifique.
75) Qu'est-ce que Laravel Forge?
Laravel Forge aide à organiser et à concevoir une application Web. Bien que les fabricants du framework Laravel aient développé ce péage, il peut automatiser le déploiement de chaque application Web fonctionnant sur un serveur PHP.
76) Énoncez la différence entre CodeIgniter et Laravel.
Paramètre | CodeIgniter | Laravel |
Prise en charge de l'ORM | CodeIgniter ne prend pas en charge le mappage objet-relationnel. | Laravel prend en charge ORM. |
Fournir une authentification | Il fournit une authentification de l'utilisateur. | Il a une authentification utilisateur intégrée. |
Paradigme de programmation | Il est axé sur les composants. | Il est orienté objet. |
Prise en charge d'autres systèmes de gestion de base de données | Il prend en charge Microsoft SQL Server, ORACLE, MYSQL, IBM DB2, PostgreSQL, JDBC et compatible orientDB. | Il prend en charge PostgreSQL, MySQL, MongoDB et Microsoft BI, mais CodeIgniter prend également en charge d'autres bases de données telles que Microsoft SQL Server, DB2, Oracle, etc. |
Prise en charge HTTPS | CodeIgniter prend partiellement en charge HTTPS. Par conséquent, les programmeurs peuvent utiliser l'URL pour sécuriser le processus de transmission de données en créant PATS. | Laravel prend en charge les routes HTTPS personnalisées. Les programmeurs peuvent créer une URL spécifique pour la route HTTPS qu'ils ont définie. |
77) Qu'est-ce qu'un observateur?
Model Observers est une fonctionnalité de Laravel. Il est utilisé pour créer des grappes d'écouteurs d'événements pour un modèle. Les noms de méthode de ces classes décrivent l'événement Eloquent. Les méthodes des classes Observers reçoivent le modèle comme argument.
78) A quoi sert le répertoire d'amorçage?
Il est utilisé pour initialiser un projet Laravel. Ce répertoire d'amorçage contient le fichier app.php qui est responsable de l'amorçage du framework.
79) Quelle est la durée par défaut du délai d'expiration de la session?
La durée par défaut du délai d'expiration de la session Laravel est de 2 heures.
80) Comment supprimer un fichier de classe conforme?
Utilisez la commande clear-compiled pour supprimer le fichier de classe compilé.
81) Dans quel dossier robot.txt est-il placé?
Le fichier Robot.txt est placé dans le répertoire public.
82) Expliquez la route API.PHP.
Ses routes correspondent à un cluster d'API. Il a un middleware API qui est activé par défaut dans Laravel. Ces routes n'ont pas de mémoire d'état et de requêtes croisées ou n'ont pas de sessions.
83) Quelle est la route nommée?
Le nom de route est une méthode générant un chemin de routage. Le chaînage de ces routes peut être sélectionné en appliquant la méthode du nom à la description de l'itinéraire.
84) Qu'est-ce qu'un logiciel open source?
Un logiciel open source est un logiciel dont le code source est disponible gratuitement. Le code source peut être partagé et modifié selon les besoins de l'utilisateur.
85) Expliquez Loggin à Laravel.
C'est une technique dans laquelle le journal système a généré des erreurs. Loggin est utile pour augmenter la fiabilité du système. Laravel prend en charge divers modes de journalisation tels que les modes syslog, journalier, unique et journal des erreurs.
86) Qu'est-ce que la localisation?
C'est une fonctionnalité de Laravel qui prend en charge différentes langues à utiliser dans l'application. Un développeur peut stocker des chaînes de langues différentes dans un fichier, et ces fichiers sont stockés dans le dossier resources / views. Les développeurs doivent créer un dossier distinct pour chaque langue prise en charge.
87) Définissez le hachage dans Laravel.
C'est la méthode de conversion du texte en une clé qui montre le texte d'origine. Laravel utilise la façade Hash pour stocker le mot de passe en toute sécurité de manière hachée.
88) Expliquez le concept de cryptage et de décryptage dans Laravel.
Il s'agit d'un processus de transformation de tout message à l'aide de certains algorithmes de telle sorte que le troisième utilisateur ne puisse pas lire les informations. Le cryptage est très utile pour protéger vos informations sensibles d'un intrus.
Le cryptage est effectué à l'aide d'un processus de cryptographie. Le message qui doit être chiffré appelé comme un message clair. Le message obtenu après le cryptage est appelé message de chiffrement. Lorsque vous convertissez du texte chiffré en texte brut ou en message, ce processus est appelé déchiffrement.
89) Comment partager des données avec des vues?
Pour transmettre des données à toutes les vues de Laravel, utilisez la méthode appelée share (). Cette méthode prend deux arguments, clé et valeur.
Généralement, la méthode share () est appelée à partir de la méthode de démarrage du fournisseur de services d'application Laravel. Un développeur peut utiliser n'importe quel fournisseur de services, AppServiceProvider ou notre propre fournisseur de services.
90) Expliquez la route web.php.
Web.php est l'itinéraire basé sur le «navigateur» destiné au public. Cette route est la plus courante et c'est ce qui est frappé par le navigateur Web. Ils fonctionnent à travers le groupe middleware Web et contiennent également des fonctionnalités pour la protection CSRF (qui aide à se défendre contre les attaques malveillantes et les hacks basés sur les formulaires) et contiennent généralement un certain "état" (je veux dire par là qu'ils utilisent des sessions).
91) Comment générer une requête dans Laravel?
Utilisez la commande artisan suivante dans Laravel pour générer une requête:
php artisan make:request UploadFileRequest