QCMUP.COM

Liste QCM PHP Corrigé – Partie 9

Entraînez-vous avec des questions corrigées, progressez étape par étape, puis consolidez vos notions grâce aux définitions et explications.

30 questions Réponses expliquées Réviser → Pratiquer
Liste QCM PHP Corrigé – Partie 9 – PHP

Bienvenue dans ce module consacré à l'une des notions les plus puissantes et essentielles de la programmation Web : la modularité.

Lorsque l'on conçoit un site internet, l'une des premières difficultés est de gérer les éléments qui se répètent sur chaque page, comme le menu de navigation, l'en-tête ou le pied de page.

Plutôt que de recopier maladroitement ces blocs de code, PHP nous offre des outils élégants pour structurer nos projets de manière intelligente et évolutive.

La maîtrise de l'inclusion de fichiers est un pilier fondamental pour tout développeur.

C'est elle qui permet de transformer un simple ensemble de pages statiques en une application robuste et facile à maintenir.

Comprendre la subtile différence entre une inclusion facultative et une inclusion obligatoire est crucial, non seulement pour réussir vos examens techniques, mais surtout pour construire des sites dont la maintenance ne devient pas un cauchemar au fil du temps.

Dans cette section, nous allons explorer comment assembler vos pages comme un jeu de construction, garantissant ainsi un code propre, portable et professionnel.

Bienvenue dans ce module consacré à l'une des notions les plus puissantes et essentielles de la programmation Web : la modularité.

Lorsque l'on conçoit un site internet, l'une des premières difficultés est de gérer les éléments qui se répètent sur chaque page, comme le menu de navigation, l'en-tête ou le pied de page.

Plutôt que de recopier maladroitement ces blocs de code, PHP nous offre des outils élégants pour structurer nos projets de manière intelligente et évolutive.

La maîtrise de l'inclusion de fichiers est un pilier fondamental pour tout développeur.

C'est elle qui permet de transformer un simple ensemble de pages statiques en une application robuste et facile à maintenir.

Comprendre la subtile différence entre une inclusion facultative et une inclusion obligatoire est crucial, non seulement pour réussir vos examens techniques, mais surtout pour construire des sites dont la maintenance ne devient pas un cauchemar au fil du temps.

Dans cette section, nous allons explorer comment assembler vos pages comme un jeu de construction, garantissant ainsi un code propre, portable et professionnel.

QCM 1 Corrigé

Quel mot-clé PHP permet d'insérer le contenu d'un fichier dans un autre, même s'il est absent ?

A. require
B. include
C. import
D. load
Afficher la réponse Cliquez pour voir la correction

Réponse correcte : B

Justification :
include affiche un avertissement mais continue l'exécution si le fichier est manquant.

QCM 2 Corrigé

Que se passe-t-il si un fichier inclus avec 'require' n'existe pas ?

A. Le script continue avec un avertissement
B. Le script s'arrête avec une erreur fatale
C. Le fichier est ignoré silencieusement
D. Un message d'erreur est envoyé par e-mail
Afficher la réponse Cliquez pour voir la correction

Réponse correcte : B

Justification :
require provoque une erreur fatale et arrête l'exécution si le fichier est introuvable.

QCM 3 Corrigé

Quel est l'avantage principal de séparer l'en-tête dans un fichier dédié ?

A. Réduire la taille du site
B. Rendre le site plus coloré
C. Faciliter la maintenance et éviter la répétition
D. Accélérer la connexion internet
Afficher la réponse Cliquez pour voir la correction

Réponse correcte : C

Justification :
La séparation évite la duplication et simplifie les futures modifications.

QCM 4 Corrigé

Laquelle de ces instructions peut être utilisée pour inclure un fichier PHP dynamiquement ?

A. include $fichier;
B. load('fichier.php');
C. require_once('fichier');
D. use fichier.php;
Afficher la réponse Cliquez pour voir la correction

Réponse correcte : A

Justification :
include accepte une variable contenant le nom du fichier à inclure.

QCM 5 Corrigé

Quelle instruction garantit qu’un fichier n’est inclus qu’une seule fois ?

A. include
B. require_once
C. load_once
D. import_once
Afficher la réponse Cliquez pour voir la correction

Réponse correcte : B

Justification :
require_once évite les redéfinitions en incluant le fichier une seule fois.

QCM 6 Corrigé

Pourquoi utiliser 'require_once' au lieu de 'require' ?

A. Pour inclure plus rapidement
B. Pour éviter les erreurs de double inclusion
C. Pour économiser de la mémoire
D. Pour rendre le site plus sécurisé
Afficher la réponse Cliquez pour voir la correction

Réponse correcte : B

Justification :
require_once empêche l'inclusion multiple du même fichier, utile pour les fonctions ou classes.

QCM 7 Corrigé

Quel type de fichier peut être inclus avec include ou require ?

A. Uniquement les fichiers .php
B. Uniquement les fichiers HTML
C. N’importe quel fichier (texte, HTML, PHP, etc.)
D. Seulement les fichiers d’images
Afficher la réponse Cliquez pour voir la correction

Réponse correcte : C

Justification :
PHP lit le contenu du fichier, quel que soit son extension, et l’insère tel quel.

QCM 8 Corrigé

Dans quel cas vaut-il mieux utiliser 'require' plutôt qu’'include' ?

A. Pour un fichier facultatif comme une publicité
B. Pour un fichier de configuration essentiel
C. Pour un fichier CSS
D. Pour un fichier d’image
Afficher la réponse Cliquez pour voir la correction

Réponse correcte : B

Justification :
require est adapté aux fichiers critiques dont l’absence rendrait le site inutilisable.

QCM 9 Corrigé

Quel est le comportement par défaut d’include si le fichier n’est pas trouvé ?

A. Erreur fatale
B. Redirection vers la page d’accueil
C. Avertissement et exécution continue
D. Inclusion d’un fichier de secours
Afficher la réponse Cliquez pour voir la correction

Réponse correcte : C

Justification :
include génère un warning mais n’interrompt pas le script.

QCM 10 Corrigé

Quel mot-clé utiliser pour inclure un menu de navigation commun à plusieurs pages ?

A. load
B. require_once
C. insert
D. use
Afficher la réponse Cliquez pour voir la correction

Réponse correcte : B

Justification :
require_once est idéal pour les éléments communs comme un menu, sans risque de double inclusion.

QCM 11 Corrigé

Comment inclure un fichier situé dans un sous-dossier nommé 'partials' ?

A. include 'partials/header.php';
B. load partials/header.php
C. require partials > header.php
D. use 'partials/header';
Afficher la réponse Cliquez pour voir la correction

Réponse correcte : A

Justification :
Le chemin relatif est indiqué directement dans la chaîne de l’instruction include.

QCM 12 Corrigé

Que produit l’inclusion d’un fichier HTML avec include ?

A. Une erreur de syntaxe
B. Rien, car seul PHP est autorisé
C. Le contenu HTML est affiché normalement
D. Le fichier est téléchargé
Afficher la réponse Cliquez pour voir la correction

Réponse correcte : C

Justification :
Le contenu HTML est envoyé au navigateur comme s’il faisait partie de la page courante.

QCM 13 Corrigé

Pourquoi structurer un site en séparant en-tête, contenu et pied de page ?

A. Pour compliquer le code
B. Pour réduire le temps de développement initial
C. Pour faciliter la mise à jour globale
D. Pour éviter d’utiliser CSS
Afficher la réponse Cliquez pour voir la correction

Réponse correcte : C

Justification :
Une structure modulaire permet de modifier un élément (ex: menu) sur tout le site en un seul endroit.

QCM 14 Corrigé

Quelle fonctionnalité distingue principalement 'include' de 'include_once' ?

A. La vitesse d’exécution
B. La possibilité d’inclure des images
C. La vérification d’inclusion antérieure
D. La compatibilité avec les navigateurs
Afficher la réponse Cliquez pour voir la correction

Réponse correcte : C

Justification :
include_once vérifie si le fichier a déjà été inclus pour éviter les doublons.

QCM 15 Corrigé

Quel est le risque d’utiliser 'include' pour un fichier contenant des définitions de fonctions ?

A. Aucun risque
B. Fonctions non exécutées
C. Erreur de redéfinition si inclus plusieurs fois
D. Ralentissement du serveur
Afficher la réponse Cliquez pour voir la correction

Réponse correcte : C

Justification :
Inclure plusieurs fois un fichier de fonctions provoque une erreur de redéfinition.

QCM 16 Corrigé

Quelle instruction utiliser pour inclure un fichier de fonctions essentielles au bon fonctionnement du site ?

A. include
B. load
C. require
D. import
Afficher la réponse Cliquez pour voir la correction

Réponse correcte : C

Justification :
require garantit que le fichier est présent, sinon le script s’arrête.

QCM 17 Corrigé

Quelle extension de fichier est recommandée pour les fragments réutilisables (en-tête, pied de page) ?

A. .txt
B. .inc
C. .php
D. .html
Afficher la réponse Cliquez pour voir la correction

Réponse correcte : C

Justification :
L’extension .php empêche l’affichage direct du fichier si accédé via URL.

QCM 18 Corrigé

Que se passe-t-il si on utilise 'require' avec un fichier vide ?

A. Erreur fatale
B. Rien, le script continue
C. Un message d’erreur est affiché
D. Le fichier est automatiquement supprimé
Afficher la réponse Cliquez pour voir la correction

Réponse correcte : B

Justification :
Un fichier vide est valide ; require l’inclut sans erreur.

QCM 19 Corrigé

Quel est l’effet de 'include_once' sur les performances ?

A. Il ralentit toujours le site
B. Il améliore légèrement la sécurité
C. Il évite les erreurs de doublon, au prix d’une légère surcharge
D. Il compresse le fichier
Afficher la réponse Cliquez pour voir la correction

Réponse correcte : C

Justification :
include_once vérifie l’historique des inclusions, ce qui consomme un peu plus de ressources.

QCM 20 Corrigé

Quel mot-clé utiliser si vous souhaitez que l’absence d’un fichier optionnel n’arrête pas le script ?

A. require
B. require_once
C. include
D. load
Afficher la réponse Cliquez pour voir la correction

Réponse correcte : C

Justification :
include permet de gérer gracieusement les fichiers manquants sans bloquer l’exécution.

QCM 21 Corrigé

Quelle est la meilleure pratique pour organiser les fichiers inclus dans un projet PHP ?

A. Les mettre tous à la racine
B. Les regrouper dans des dossiers thématiques (ex: 'partials')
C. Les nommer tous 'temp.php'
D. Les stocker dans un fichier .zip
Afficher la réponse Cliquez pour voir la correction

Réponse correcte : B

Justification :
Une organisation claire facilite la navigation et la maintenance du projet.

QCM 22 Corrigé

Peut-on inclure un fichier PHP contenant uniquement du HTML avec 'require' ?

A. Non, cela provoque une erreur
B. Oui, sans problème
C. Seulement si le fichier contient du CSS
D. Uniquement avec include
Afficher la réponse Cliquez pour voir la correction

Réponse correcte : B

Justification :
Le contenu d’un fichier inclus est traité comme du texte brut s’il n’y a pas de balises PHP.

QCM 23 Corrigé

Quel est le comportement de 'require_once' si le fichier a déjà été inclus par 'include' ?

A. Il est inclus à nouveau
B. Il est ignoré
C. Erreur de conflit
D. Redémarrage du serveur
Afficher la réponse Cliquez pour voir la correction

Réponse correcte : B

Justification :
require_once et include_once partagent le même registre d’inclusion interne à PHP.

QCM 24 Corrigé

Pourquoi éviter d’utiliser des chemins absolus dans include/require ?

A. Ils sont plus lents
B. Ils rendent le code moins portable
C. Ils ne fonctionnent pas sur Windows
D. Ils exposent les mots de passe
Afficher la réponse Cliquez pour voir la correction

Réponse correcte : B

Justification :
Les chemins absolus dépendent du serveur, ce qui complique le transfert du site.

QCM 25 Corrigé

Quel est l’objectif principal de la réutilisation de code via l’inclusion de fichiers ?

A. Réduire la consommation d’électricité
B. Éviter la duplication du code
C. Rendre le site plus joli
D. Forcer l’utilisation de JavaScript
Afficher la réponse Cliquez pour voir la correction

Réponse correcte : B

Justification :
Éviter la duplication améliore la lisibilité, la maintenance et la cohérence du site.

QCM 26 Corrigé

Qu’affiche le script si un fichier inclus avec 'include' contient un echo 'Bonjour'; ?

A. Rien
B. Une erreur
C. Bonjour
D. Le chemin du fichier
Afficher la réponse Cliquez pour voir la correction

Réponse correcte : C

Justification :
Le code PHP du fichier inclus est exécuté comme s’il était dans le fichier principal.

QCM 27 Corrigé

Quel mot-clé utiliser pour inclure un fichier de constantes de configuration ?

A. include
B. load
C. require_once
D. use
Afficher la réponse Cliquez pour voir la correction

Réponse correcte : C

Justification :
require_once est idéal pour les fichiers de configuration critiques et à inclure une seule fois.

QCM 28 Corrigé

Dans quel cas un fichier inclus peut-il accéder aux variables du fichier parent ?

A. Jamais
B. Toujours, sauf dans les fonctions
C. Uniquement si déclaré global
D. Seulement avec include_once
Afficher la réponse Cliquez pour voir la correction

Réponse correcte : B

Justification :
Les fichiers inclus partagent la portée des variables du fichier appelant, sauf dans les fonctions.

QCM 29 Corrigé

Quel est le principal inconvénient de copier-coller du code sur plusieurs pages ?

A. Le site devient plus rapide
B. Les modifications deviennent fastidieuses
C. Le code est plus sécurisé
D. Le site consomme moins de bande passante
Afficher la réponse Cliquez pour voir la correction

Réponse correcte : B

Justification :
Chaque modification doit être répétée sur toutes les pages, ce qui est source d’erreurs.

QCM 30 Corrigé

Que fait cette ligne : if (file_exists('header.php')) { include 'header.php'; } ?

A. Elle supprime le fichier s’il existe
B. Elle inclut le fichier uniquement s’il existe
C. Elle affiche le contenu sans l’inclure
D. Elle renomme le fichier
Afficher la réponse Cliquez pour voir la correction

Réponse correcte : B

Justification :
La condition évite toute erreur en vérifiant d’abord la présence du fichier avant de l’inclure.

Mots & Définitions
Consultez les définitions des termes importants.

C'est un mécanisme qui permet d'insérer le contenu d'un fichier externe directement dans un autre script au moment de son exécution. Cela permet de construire une page web comme un puzzle, en assemblant différentes pièces réutilisables.

C'est une méthode d'organisation consistant à diviser un site web en plusieurs petits fichiers indépendants (comme l'en-tête, le menu ou le pied de page). Cette structure rend le code beaucoup plus clair, plus professionnel et plus facile à maintenir sur le long terme.

Cette commande permet d'appeler un fichier externe de manière souple. Si le fichier est manquant, le site affichera une simple alerte mais continuera de fonctionner, ce qui est idéal pour des éléments non critiques comme une bannière publicitaire.

Contrairement à l'inclusion simple, cette commande exige strictement la présence du fichier appelé. Si celui-ci est absent, le script s'arrête immédiatement, garantissant ainsi qu'aucune page ne s'affiche sans ses composants vitaux comme la configuration ou la sécurité.

C'est une sécurité ajoutée aux commandes d'inclusion qui vérifie si un fichier a déjà été chargé précédemment. Cela évite des erreurs techniques graves, comme le fait de déclarer deux fois la même fonction, ce qui ferait planter l'application.

C'est l'avantage majeur de la séparation du code : en modifiant un seul fichier (par exemple le menu), le changement se répercute instantanément sur toutes les pages du site. On évite ainsi les copier-coller fastidieux et les risques d'oubli.

Il s'agit de l'adresse d'un fichier calculée par rapport à l'endroit où l'on se trouve actuellement dans l'arborescence du projet. Utiliser cette méthode permet de déplacer facilement son site d'un dossier ou d'un serveur à un autre sans casser les liens.

C'est la règle qui définit la visibilité des données entre les fichiers. En PHP, un fichier inclus hérite naturellement des informations créées dans le fichier qui l'appelle, permettant une communication fluide entre les différents morceaux de la page.

C'est un type d'arrêt brutal du programme provoqué par un problème critique, comme l'absence d'un fichier indispensable. Contrairement à un simple avertissement, l'erreur fatale empêche tout affichage ultérieur pour protéger l'intégrité du site.

Ce sont des petits bouts de fichiers contenant uniquement une partie du code HTML ou PHP (comme un formulaire de contact ou un pied de page). Ils ne sont pas destinés à être consultés seuls, mais à être assemblés pour former une page complète.

C'est une mauvaise pratique consistant à copier exactement le même code sur plusieurs pages différentes. Cela rend les mises à jour pénibles et multiplie les risques d'erreurs lors de l'évolution du site internet.

Un document central regroupant les paramètres essentiels d'un site, tels que les accès à la base de données ou les constantes globales. Il est presque toujours appelé via une instruction de type 'require' pour assurer le bon démarrage du site.

Il s'agit de l'organisation des dossiers et fichiers d'un projet. Une bonne arborescence sépare le contenu visible par les visiteurs des scripts techniques et des composants réutilisables pour une meilleure clarté.

C'est un test préalable que l'on effectue pour savoir si un fichier est réellement présent sur le serveur avant de tenter de l'utiliser. Cela permet de créer des scripts intelligents qui s'adaptent dynamiquement au contenu disponible.

Bien que l'on puisse inclure n'importe quel type de fichier, utiliser l'extension .php pour les fragments est une norme de sécurité. Cela garantit que le contenu technique ne sera jamais affiché en clair si un visiteur tente d'y accéder directement.

À propos de ce QCM

L'architecture d'une application PHP repose sur un principe simple mais redoutable : "Ne vous répétez jamais" (DRY - Don't Repeat Yourself).

Cette philosophie s'appuie sur la capacité du langage à fusionner plusieurs fichiers en un seul rendu final pour le visiteur.

Le cœur de cet enseignement réside dans la compréhension des mécanismes de liaison.

Nous distinguons deux approches principales.

La première, souple, permet d'intégrer des éléments dont l'absence n'est pas dramatique pour l'utilisateur.

La seconde, plus stricte, est réservée aux composants vitaux du système : fichiers de configuration, fonctions de sécurité ou bibliothèques de calcul.

Apprendre à choisir entre ces deux méthodes, c'est apprendre à gérer la stabilité de votre site et à anticiper les erreurs serveurs.

Un autre aspect pédagogique majeur est la gestion de l'unicité.

Dans des projets complexes, il arrive souvent que plusieurs composants aient besoin du même fichier technique.

PHP propose des garde-fous intelligents pour éviter de charger plusieurs fois la même ressource, ce qui prévient les conflits internes et les pannes de script.

Enfin, nous mettons l'accent sur l'organisation structurelle.

Un bon développeur ne se contente pas d'écrire du code qui fonctionne ; il organise ses fichiers dans des dossiers thématiques et utilise des chemins d'accès logiques.

Cette rigueur permet de rendre le projet "portable", c'est-à-dire capable de fonctionner sur n'importe quel serveur sans modification lourde.

En maîtrisant ces concepts de séparation et de réutilisation, vous développez une vision globale de l'ingénierie logicielle, une compétence très recherchée qui dépasse largement le simple cadre du langage PHP.

Conclusion

En maîtrisant la modularité, vous venez de franchir une étape déterminante vers le professionnalisme.

Séparer le fond de la forme et isoler les composants réutilisables est la marque des développeurs organisés et efficaces.

Cette méthode ne se contente pas de simplifier votre travail actuel ; elle prépare votre code pour l'avenir, facilitant chaque mise à jour et chaque évolution de votre projet.

Je vous encourage vivement à appliquer systématiquement cette structure en "puzzle" dans vos créations.

C'est en pratiquant cette organisation rigoureuse que vous gagnerez en rapidité et en sérénité.