Ces QCM sont centrés sur un point essentiel en PHP : la maîtrise des variables et des types de données.
Comprendre comment une variable est nommée, stockée et affichée permet d’écrire des scripts fiables, lisibles et faciles à corriger.
Dans un contexte d’études, d’examens ou de concours, ces notions reviennent très souvent parce qu’elles conditionnent toute la logique d’un programme.
On y retrouve les types fondamentaux comme les entiers, les nombres décimaux, les chaînes de caractères et les booléens, ainsi que la manière dont PHP interprète et convertit automatiquement certaines valeurs.
En travaillant ces concepts, l’apprenant construit des bases solides pour aller vers les conditions, les boucles, les fonctions et la gestion des formulaires, sans se bloquer sur des erreurs simples mais fréquentes.
Ces QCM sont centrés sur un point essentiel en PHP : la maîtrise des variables et des types de données.
Comprendre comment une variable est nommée, stockée et affichée permet d’écrire des scripts fiables, lisibles et faciles à corriger.
Dans un contexte d’études, d’examens ou de concours, ces notions reviennent très souvent parce qu’elles conditionnent toute la logique d’un programme.
On y retrouve les types fondamentaux comme les entiers, les nombres décimaux, les chaînes de caractères et les booléens, ainsi que la manière dont PHP interprète et convertit automatiquement certaines valeurs.
En travaillant ces concepts, l’apprenant construit des bases solides pour aller vers les conditions, les boucles, les fonctions et la gestion des formulaires, sans se bloquer sur des erreurs simples mais fréquentes.
QCM
1
Corrigé
Par quel symbole doit obligatoirement commencer le nom d'une variable en PHP ?
A. Le signe &
B. Le signe $
C. Le signe #
D. Le signe @
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
B
Justification :
Toutes les variables PHP commencent par le caractère dollar ($) suivi du nom de la variable.
QCM
2
Corrigé
Quel type de données est utilisé pour stocker un nombre à virgule (ex: 15.5) ?
A. Integer
B. Boolean
C. Float (ou Double)
D. String
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
C
Justification :
Le type Float (flottant) est spécifiquement conçu pour les nombres réels avec une partie décimale.
QCM
3
Corrigé
Que signifie le concept de 'typage dynamique' en PHP ?
A. Il faut déclarer le type avant d'utiliser une variable
B. Le type d'une variable peut changer selon la valeur assignée
C. Les variables sont uniquement des nombres
D. Le type est choisi aléatoirement par le serveur
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
B
Justification :
En PHP, on ne définit pas le type manuellement ; il est déterminé automatiquement par le contexte de la valeur.
QCM
4
Corrigé
Laquelle de ces déclarations de variable est invalide ?
A. $maVariable = 10;
B. $_test = 'OK';
C. $123variable = 5;
D. $Variable_Maj = true;
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
C
Justification :
Un nom de variable peut commencer par une lettre ou un tiret bas, mais jamais par un chiffre.
QCM
5
Corrigé
Quel est le résultat de l'instruction : echo '5' + 5; ?
A. 10
B. 55
C. Erreur de syntaxe
D. '55'
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
A
Justification :
PHP convertit automatiquement la chaîne '5' en entier pour effectuer l'addition mathématique.
QCM
6
Corrigé
Comment affiche-t-on le contenu de la variable $nom ?
A. print_var($nom);
B. display $nom;
C. echo $nom;
D. echo '$nom';
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
C
Justification :
L'instruction echo suivie du nom de la variable affiche sa valeur directement.
QCM
7
Corrigé
Quel type de données ne peut prendre que deux valeurs : true ou false ?
A. String
B. Integer
C. Array
D. Boolean
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
D
Justification :
Le type booléen (Boolean) représente une valeur logique de vérité.
QCM
8
Corrigé
Quelle est la valeur de la variable $x après : $x = 10; $x = 'Bonjour'; ?
A. 10
B. 'Bonjour'
C. Une erreur de type
D. NULL
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
B
Justification :
La dernière valeur assignée écrase la précédente, quel que soit son type d'origine.
QCM
9
Corrigé
Comment concatène-t-on deux variables de type chaîne de caractères ?
A. $a + $b
B. $a . $b
C. $a & $b
D. $a , $b
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
B
Justification :
En PHP, le point (.) est l'opérateur de concaténation pour assembler des chaînes.
QCM
10
Corrigé
Qu'affiche le code : $a = true; echo $a; ?
A. true
B. 0
C. 1
D. Rien du tout
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
C
Justification :
Lorsqu'un booléen true est affiché avec echo, PHP le convertit en chaîne de caractères '1'.
QCM
11
Corrigé
Quel est l'utilité de la fonction var_dump() ?
A. Supprimer une variable
B. Afficher la valeur et le type détaillé d'une variable
C. Additionner des variables
D. Vider la mémoire du serveur
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
B
Justification :
var_dump() est un outil de débogage qui montre la structure, le type et la longueur de la donnée.
QCM
12
Corrigé
Lequel de ces exemples est un type 'Integer' ?
A. 12.5
B. true
C. '42'
D. -500
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
D
Justification :
Un Integer est un nombre entier positif ou négatif, sans virgule.
QCM
13
Corrigé
PHP est-il sensible à la casse pour les variables ($abc et $ABC) ?
A. Non, elles sont identiques
B. Oui, ce sont deux variables différentes
C. Seulement si elles sont des chaînes
D. Seulement sous Linux
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
B
Justification :
En PHP, les noms de variables sont sensibles à la casse (Case Sensitive).
QCM
14
Corrigé
Que contient une variable déclarée sans valeur comme : $z; ?
A. 0
B. false
C. Une chaîne vide
D. NULL (ou génère un avertissement)
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
D
Justification :
Une variable non initialisée est considérée comme NULL et produit une notice si on tente de l'utiliser.
QCM
15
Corrigé
Comment appelle-t-on une variable dont la valeur ne doit jamais changer ?
A. Une constante
B. Un super-global
C. Un paramètre
D. Une variable fixe
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
A
Justification :
Une constante est définie avec define() ou const et sa valeur reste immuable.
QCM
16
Corrigé
Quelle est la sortie de : $n = 5; echo "Valeur : $n"; ?
A. Valeur : $n
B. Valeur : 5
C. Valeur :
D. Erreur de syntaxe
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
B
Justification :
Les guillemets doubles permettent l'interprétation des variables à l'intérieur de la chaîne.
QCM
17
Corrigé
Quelle est la sortie de : $n = 5; echo 'Valeur : $n'; ?
A. Valeur : 5
B. Valeur : $n
C. Valeur :
D. 5
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
B
Justification :
Les guillemets simples n'interprètent pas les variables ; elles sont traitées comme du texte pur.
QCM
18
Corrigé
Quel opérateur est utilisé pour assigner une valeur à une variable ?
A. ==
B. ===
C. =>
D. =
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
D
Justification :
Le signe égal (=) est l'opérateur d'affectation en PHP.
QCM
19
Corrigé
Comment convertir manuellement une variable en entier (cast) ?
A. (int)$maVar
B. convert_int($maVar)
C. toInteger($maVar)
D. $maVar.toInt()
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
A
Justification :
Le 'type casting' se fait en plaçant le type souhaité entre parenthèses devant la variable.
QCM
20
Corrigé
Que renvoie la fonction gettype($var) ?
A. La valeur de la variable
B. Le nom de la variable
C. Une chaîne de caractères indiquant le type
D. L'adresse mémoire
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
C
Justification :
gettype() retourne le type de la variable (ex: 'string', 'integer', 'boolean').
QCM
21
Corrigé
Lequel est un exemple correct de type 'Boolean' ?
A. 'true'
B. False
C. 1
D. NULL
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
B
Justification :
True et False (insensibles à la casse) sont les deux mots-clés réservés du type booléen.
QCM
22
Corrigé
Que se passe-t-il si on utilise une variable non définie ?
A. Le script s'arrête immédiatement
B. Le serveur redémarre
C. Une erreur 'Undefined variable' est générée
D. La variable est créée automatiquement avec '1'
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
C
Justification :
L'utilisation d'une variable inconnue génère un avertissement (Warning/Notice) mais n'arrête pas forcément le script.
QCM
23
Corrigé
Quelle est la limite de stockage d'un Integer en PHP ?
A. 255
B. 65535
C. Elle dépend de la plateforme (32 ou 64 bits)
D. Il n'y a aucune limite
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
C
Justification :
La taille d'un entier est liée à l'architecture du serveur (généralement 64 bits de nos jours).
QCM
24
Corrigé
Un Float peut-il être écrit en notation scientifique (ex: 1.2e3) ?
A. Oui
B. Non
C. Seulement avec des entiers
D. Seulement dans les constantes
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
A
Justification :
PHP accepte la notation scientifique pour définir des nombres flottants très grands ou très petits.
QCM
25
Corrigé
Quelle est la sortie de : $x = 10; echo $x + 2.5; ?
A. 12
B. 12.5
C. 102.5
D. Erreur
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
B
Justification :
PHP convertit dynamiquement l'entier en flottant pour permettre l'addition avec un nombre décimal.
QCM
26
Corrigé
Comment déclare-t-on une chaîne de caractères sur plusieurs lignes ?
A. En utilisant la syntaxe Heredoc (<<<)
B. Avec des parenthèses
C. C'est impossible en PHP
D. En mettant des virgules à la fin de chaque ligne
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
A
Justification :
Heredoc est une manière pratique de définir de longs blocs de texte multi-lignes.
QCM
27
Corrigé
Laquelle de ces variables est de type String ?
A. $a = 100;
B. $b = "100";
C. $c = true;
D. $d = 100.0;
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
B
Justification :
Tout contenu entouré de guillemets est traité comme une chaîne de caractères.
QCM
28
Corrigé
Que fait l'instruction : unset($maVar); ?
A. Elle vide la valeur mais garde la variable
B. Elle change le type en entier
C. Elle détruit la variable
D. Elle affiche la variable
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
C
Justification :
unset() supprime la variable de la mémoire système.
QCM
29
Corrigé
Comment peut-on vérifier si une variable est définie ?
A. check($var)
B. isset($var)
C. empty($var)
D. exists($var)
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
B
Justification :
isset() renvoie true si la variable existe et n'est pas NULL.
QCM
30
Corrigé
Peut-on utiliser des caractères accentués dans le nom d'une variable ?
A. Oui, mais c'est fortement déconseillé
B. Non, c'est formellement interdit
C. Seulement au début du nom
D. Seulement à la fin du nom
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
A
Justification :
PHP l'autorise (caractères ASCII étendus), mais les standards de code recommandent l'anglais sans accents.
Mots & Définitions
Consultez les définitions des termes importants.
Une variable est un espace de stockage nommé qui contient une valeur (nombre, texte, booléen, etc.). En PHP, elle sert à mémoriser des informations pour les réutiliser dans le script. Son contenu peut évoluer au fil de l’exécution.
Le symbole $ est obligatoire devant le nom de toute variable en PHP. Il permet au langage d’identifier immédiatement qu’on manipule une variable. Sans ce préfixe, le code n’est pas interprété comme une variable.
Un type de données décrit la nature d’une valeur stockée : nombre entier, nombre décimal, texte, vrai/faux, etc. Il influence la manière dont PHP traite la valeur lors des calculs ou des affichages. Bien reconnaître les types évite des erreurs et des résultats inattendus.
Un integer est un nombre sans virgule, positif ou négatif. Il est utilisé pour compter, indexer ou faire des calculs simples. Sa taille maximale dépend de l’architecture de la machine (32 ou 64 bits).
Un float (ou double) est un nombre avec une partie décimale, comme 15.5. Il sert notamment pour des mesures, des prix ou des calculs nécessitant des décimales. Il peut aussi s’écrire en notation scientifique.
Un booléen est un type de données qui ne peut prendre que deux valeurs : true ou false. Il sert à représenter une condition, un état ou un résultat logique. C’est un type central pour les tests et les décisions dans un programme.
Une chaîne de caractères est une suite de lettres, chiffres ou symboles, utilisée pour représenter du texte. En PHP, elle s’écrit entre guillemets simples ou doubles. Selon le type de guillemets, l’interprétation des variables peut changer.
Le typage dynamique signifie que le type d’une variable n’est pas fixé à l’avance. En PHP, une même variable peut contenir successivement un nombre puis un texte, selon la valeur qu’on lui affecte. Cela donne de la souplesse, mais demande de la rigueur.
L’affectation consiste à donner une valeur à une variable à l’aide de l’opérateur =. Elle permet d’initialiser une variable ou de modifier son contenu. C’est l’une des opérations les plus fréquentes en programmation.
La concaténation est l’action d’assembler plusieurs chaînes de caractères pour en former une seule. En PHP, on utilise le point (.) pour coller du texte et des variables. C’est très utile pour construire des messages ou du contenu HTML.
L’interpolation consiste à insérer directement la valeur d’une variable dans une chaîne de caractères. En PHP, cela fonctionne surtout avec les guillemets doubles. Avec des guillemets simples, le contenu est généralement affiché tel quel.
La conversion de type permet de transformer une valeur d’un type vers un autre, par exemple convertir un texte en entier. On l’utilise pour sécuriser un calcul ou normaliser des données. Cela évite des comportements implicites parfois surprenants.
var_dump() est un outil de débogage qui affiche une variable avec son type et ses détails. Il aide à comprendre ce que contient réellement une variable à un moment précis. C’est particulièrement utile quand le résultat ne correspond pas à ce qu’on attend.
isset() permet de vérifier si une variable est définie et n’est pas NULL. On l’utilise souvent avant d’accéder à une variable pour éviter des avertissements. C’est un réflexe important quand on manipule des données venant d’un formulaire ou d’une requête.
unset() supprime une variable en la détruisant, comme si elle n’existait plus. Cela peut servir à libérer une variable devenue inutile ou à éviter une réutilisation accidentelle. Après unset(), la variable n’est plus accessible sans réaffectation.
À propos de ce QCM
Après avoir répondu aux QCM, il est utile de comprendre ce qu’ils entraînent réellement sur le plan pratique.
D’abord, PHP impose une règle claire : toute variable commence par le symbole $, et son nom doit respecter des conventions précises.
Cette discipline évite les ambiguïtés et facilite la lecture du code.
Ensuite, la notion de typage dynamique est centrale : une variable peut changer de type selon la valeur qu’on lui attribue, ce qui rend le langage très flexible.
Mais cette flexibilité implique de savoir reconnaître les types (integer, float, string, boolean) et de comprendre leur comportement lors des opérations.
Par exemple, un calcul peut déclencher une conversion implicite, ou produire un résultat inattendu si l’on confond texte et nombre.
L’affichage est également un thème important : afficher une variable correctement dépend de l’instruction utilisée et du contexte, notamment lorsque l’on insère une variable dans une chaîne de caractères.
La différence entre guillemets simples et doubles devient alors un détail déterminant, car elle influence l’interpolation.
Les outils de diagnostic comme var_dump() et gettype() sont aussi essentiels : ils permettent de vérifier précisément la valeur et le type d’une variable, ce qui accélère le débogage.
Enfin, savoir contrôler l’existence d’une variable avec isset(), gérer les variables non définies, ou supprimer une variable avec unset() développe de bons réflexes de programmation, utiles dans tous les projets, en particulier lorsqu’on manipule des données utilisateurs.
En s’entraînant sur ces notions, l’apprenant gagne en compréhension, en précision et en autonomie, et se prépare efficacement à des exercices plus complets où la logique et la fiabilité du code deviennent prioritaires.
Conclusion
En conclusion, ces QCM constituent un entraînement très pertinent pour consolider les bases de PHP autour des variables, des types et de l’affichage.
En maîtrisant le typage dynamique, les conversions, la concaténation et les vérifications d’existence, on réduit fortement les erreurs courantes et on progresse plus rapidement.
L’idéal est de compléter l’entraînement par de petites pratiques : tester différents types, afficher des variables avec plusieurs syntaxes, et observer les conversions dans des calculs simples.
À force de répétition, ces mécanismes deviennent naturels, ce qui permet ensuite de se concentrer sur des compétences plus avancées comme la validation de formulaires, la manipulation de tableaux ou l’interaction avec une base de données.