Bienvenue dans cet univers passionnant qu'est le développement Web avec PHP.
Si vous débutez en programmation, vous réaliserez rapidement que la gestion des données est le cœur de toute application dynamique.
Qu'il s'agisse de lister les articles d'un blog, de gérer les membres d'une communauté ou de traiter des formulaires complexes, la maîtrise des structures de stockage est une compétence non négociable.
Le domaine des tableaux, ou arrays, constitue la colonne vertébrale de l'algorithmique en PHP.
Comprendre comment organiser, parcourir et transformer ces ensembles de données est essentiel pour tout futur développeur souhaitant réussir ses examens techniques ou ses entretiens d'embauche.
Dans cette section, nous vous accompagnons pour consolider vos bases et acquérir les bons réflexes.
Ensemble, nous allons explorer la logique des indices, la puissance des boucles et les fonctions natives qui rendent PHP si flexible et efficace pour manipuler l'information au quotidien.
Bienvenue dans cet univers passionnant qu'est le développement Web avec PHP.
Si vous débutez en programmation, vous réaliserez rapidement que la gestion des données est le cœur de toute application dynamique.
Qu'il s'agisse de lister les articles d'un blog, de gérer les membres d'une communauté ou de traiter des formulaires complexes, la maîtrise des structures de stockage est une compétence non négociable.
Le domaine des tableaux, ou arrays, constitue la colonne vertébrale de l'algorithmique en PHP.
Comprendre comment organiser, parcourir et transformer ces ensembles de données est essentiel pour tout futur développeur souhaitant réussir ses examens techniques ou ses entretiens d'embauche.
Dans cette section, nous vous accompagnons pour consolider vos bases et acquérir les bons réflexes.
Ensemble, nous allons explorer la logique des indices, la puissance des boucles et les fonctions natives qui rendent PHP si flexible et efficace pour manipuler l'information au quotidien.
QCM
1
Corrigé
Quelle est la définition principale d'un tableau (array) en PHP ?
A. Une fonction de calcul mathématique
B. Une variable capable de stocker plusieurs valeurs
C. Un fichier texte externe
D. Une balise HTML de mise en forme
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
B
Justification :
Un tableau est une structure de données qui permet de regrouper plusieurs éléments dans une seule variable.
QCM
2
Corrigé
Comment déclare-t-on un tableau vide avec la syntaxe courte ?
A. $tab = array();
B. $tab = {};
C. $tab = [];
D. $tab = ();
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
C
Justification :
Depuis PHP 5.4, les crochets [] sont la syntaxe courte et moderne pour déclarer un tableau.
QCM
3
Corrigé
Dans un tableau indexé automatiquement, quel est l'index du premier élément ?
A. 0
B. 1
C. -1
D. A
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
A
Justification :
En informatique et en PHP, le compte des indices d'un tableau commence toujours à 0.
QCM
4
Corrigé
Comment accède-t-on à la valeur 'Lundi' si elle est le premier élément de $jours ?
A. $jours{0}
B. $jours[1]
C. $jours->0
D. $jours[0]
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
D
Justification :
On utilise le nom de la variable suivi de l'index entre crochets pour lire une valeur spécifique.
QCM
5
Corrigé
Quelle fonction permet de connaître le nombre d'éléments dans un tableau ?
A. count()
B. length()
C. size()
D. total()
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
A
Justification :
La fonction count() retourne le nombre exact d'entrées présentes dans un tableau PHP.
QCM
6
Corrigé
Comment appelle-t-on un tableau qui utilise des noms (clés) au lieu de numéros ?
A. Tableau numérique
B. Tableau associatif
C. Tableau multidimensionnel
D. Tableau dynamique
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
B
Justification :
Un tableau associatif associe une clé personnalisée (chaîne de caractères) à une valeur.
QCM
7
Corrigé
Quel symbole est utilisé pour séparer une clé de sa valeur dans un tableau associatif ?
A. :
B. =>
C. ->
D. =
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
B
Justification :
L'opérateur 'double flèche' (=>) permet de lier une clé à sa valeur lors de la déclaration.
QCM
8
Corrigé
Quelle boucle est la plus adaptée pour parcourir un tableau sans connaître sa taille ?
A. for
B. while
C. foreach
D. switch
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
C
Justification :
La boucle foreach est conçue spécifiquement pour parcourir chaque élément d'un tableau simplement.
QCM
9
Corrigé
Que fait l'instruction : $liste[] = 'Bleu'; ?
A. Elle remplace le premier élément par 'Bleu'
B. Elle crée une erreur de syntaxe
C. Elle vide le tableau $liste
D. Elle ajoute 'Bleu' à la fin du tableau
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
D
Justification :
Utiliser des crochets vides permet d'ajouter une nouvelle valeur au prochain index disponible.
QCM
10
Corrigé
Qu'est-ce qu'un tableau multidimensionnel ?
A. Un tableau qui contient d'autres tableaux
B. Un tableau qui ne peut pas être modifié
C. Un tableau avec plus de 1000 éléments
D. Un tableau utilisé uniquement pour les images
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
A
Justification :
Il s'agit d'un tableau dont les valeurs sont elles-mêmes des tableaux (ex: une grille).
QCM
11
Corrigé
Quelle fonction permet de vérifier si une clé existe dans un tableau associatif ?
A. key_exists()
B. array_key_exists()
C. in_array()
D. isset_key()
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
B
Justification :
array_key_exists() vérifie la présence d'une clé, même si la valeur associée est nulle.
QCM
12
Corrigé
Que renvoie print_r($monTableau) ?
A. Le nombre d'éléments
B. Une erreur de type
C. Une représentation lisible du contenu du tableau
D. La première valeur uniquement
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
C
Justification :
print_r est une fonction de débogage qui affiche les clés et les valeurs d'un tableau.
QCM
13
Corrigé
Quelle fonction permet d'ajouter un élément au DÉBUT d'un tableau ?
A. array_push()
B. array_unshift()
C. array_start()
D. array_add_first()
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
B
Justification :
array_unshift() insère un ou plusieurs éléments au commencement du tableau.
QCM
14
Corrigé
Comment supprime-t-on un élément spécifique d'un tableau via sa clé ?
A. delete($tab['cle']);
B. remove($tab['cle']);
C. unset($tab['cle']);
D. clear($tab['cle']);
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
C
Justification :
L'instruction unset() détruit la variable ou l'entrée du tableau spécifiée.
QCM
15
Corrigé
Quelle fonction vérifie si une VALEUR existe dans un tableau ?
A. in_array()
B. search_array()
C. has_value()
D. array_find()
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
A
Justification :
in_array() cherche une valeur précise et renvoie true si elle est trouvée.
QCM
16
Corrigé
Comment trier un tableau numérique dans l'ordre croissant ?
A. order()
B. asort()
C. rsort()
D. sort()
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
D
Justification :
La fonction sort() réorganise les éléments du plus petit au plus grand.
QCM
17
Corrigé
Soit $t = [10, 20, 30]. Que vaut $t[1] ?
A. 10
B. 20
C. 30
D. null
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
B
Justification :
L'index 0 est 10, l'index 1 est donc 20.
QCM
18
Corrigé
Quelle fonction transforme une chaîne de caractères en tableau (via un séparateur) ?
A. explode()
B. implode()
C. split_text()
D. array_string()
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
A
Justification :
explode() découpe une chaîne (ex: une phrase) en plusieurs morceaux dans un tableau.
QCM
19
Corrigé
Quelle fonction transforme un tableau en une chaîne de caractères ?
A. explode()
B. concat()
C. implode()
D. join_array()
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
C
Justification :
implode() rassemble les éléments d'un tableau en une seule chaîne avec un liant.
QCM
20
Corrigé
Comment déclare-t-on une clé pour un utilisateur 'ID' avec la valeur 500 ?
A. $u = ['ID' => 500];
B. $u = [500 => 'ID'];
C. $u = ['ID' : 500];
D. $u = ['ID' = 500];
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
A
Justification :
Le nom de la clé est à gauche de l'opérateur => et la valeur à droite.
QCM
21
Corrigé
Quelle fonction retire le DERNIER élément d'un tableau ?
A. array_pop()
B. array_shift()
C. array_end_remove()
D. array_last_out()
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
A
Justification :
array_pop() dépile (supprime et retourne) le dernier élément du tableau.
QCM
22
Corrigé
Si on parcourt un tableau associatif avec foreach, comment récupérer la clé ?
A. foreach($tab as $valeur)
B. foreach($tab as $cle => $valeur)
C. foreach($tab as $valeur : $cle)
D. foreach($tab->keys as $cle)
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
B
Justification :
La syntaxe $cle => $valeur permet d'extraire simultanément l'étiquette et la donnée.
QCM
23
Corrigé
Un tableau PHP peut-il contenir des types de données différents (ex: int et string) ?
A. Non, seulement un seul type
B. Oui, sans problème
C. Seulement si on utilise array_mixed()
D. Seulement dans les tableaux associatifs
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
B
Justification :
PHP est très flexible : un même tableau peut stocker des nombres, du texte et des booléens.
QCM
24
Corrigé
Quelle fonction fusionne deux tableaux en un seul ?
A. array_combine()
B. array_add()
C. array_merge()
D. array_mix()
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
C
Justification :
array_merge() met les éléments du second tableau à la suite de ceux du premier.
QCM
25
Corrigé
Que se passe-t-il si vous tentez d'accéder à un index qui n'existe pas ?
A. PHP renvoie 0
B. Le serveur s'arrête
C. PHP génère un avertissement (Warning/Notice)
D. Le tableau est automatiquement agrandi
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
C
Justification :
Accéder à un index inexistant produit une erreur de type 'Undefined array key' ou 'Undefined offset'.
QCM
26
Corrigé
Comment peut-on mélanger aléatoirement les éléments d'un tableau ?
A. random()
B. shuffle()
C. array_rand()
D. mix()
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
B
Justification :
shuffle() mélange les éléments du tableau passé en paramètre de manière aléatoire.
QCM
27
Corrigé
Laquelle de ces fonctions permet de trouver une valeur et de retourner sa clé ?
A. array_search()
B. in_array()
C. find_key()
D. array_lookup()
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
A
Justification :
array_search() cherche une valeur et renvoie la clé correspondante si elle existe.
QCM
28
Corrigé
Que fait array_reverse() ?
A. Elle efface le tableau
B. Elle inverse l'ordre des éléments
C. Elle trie par ordre alphabétique inverse
D. Elle change les clés en valeurs
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
B
Justification :
Elle retourne un nouveau tableau avec les éléments dans l'ordre opposé.
QCM
29
Corrigé
Comment déclare-t-on un tableau avec l'ancienne syntaxe (avant PHP 5.4) ?
A. $t = list();
B. $t = collection();
C. $t = array();
D. $t = new Array();
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
C
Justification :
La fonction array() était la seule méthode de déclaration avant l'arrivée des crochets.
QCM
30
Corrigé
Que signifie LIFO (Last In First Out) avec array_push et array_pop ?
A. Le premier arrivé est le premier sorti
B. Les éléments sont triés par taille
C. Le dernier élément ajouté est le premier à être retiré
D. Le tableau est lu à l'envers
Afficher la réponse
Cliquez pour voir la correction
Réponse correcte :
C
Justification :
C'est le principe d'une pile : on ajoute et on retire par le haut (la fin du tableau).
Mots & Définitions
Consultez les définitions des termes importants.
C'est une structure de données fondamentale qui permet de stocker plusieurs valeurs sous un seul nom de variable. Au lieu de créer dix variables différentes, on regroupe les informations dans un ensemble organisé et facile à manipuler.
Il s'agit du numéro d'ordre associé à chaque élément d'un tableau numérique. En programmation PHP, le décompte commence toujours à zéro, ce qui signifie que le premier élément est situé à la position 0.
Contrairement au tableau classique qui utilise des numéros, celui-ci utilise des étiquettes textuelles appelées clés pour identifier les valeurs. C'est l'outil idéal pour structurer des données complexes, comme une fiche utilisateur où l'on associe un 'nom' à une valeur précise.
Introduite dans les versions modernes de PHP, cette notation utilise des crochets pour déclarer un tableau au lieu de la fonction traditionnelle. Elle rend le code plus léger, plus lisible et plus rapide à écrire pour le développeur.
C'est une structure de contrôle spécialement conçue pour parcourir intégralement un tableau, quel que soit son nombre d'éléments. Elle extrait automatiquement chaque valeur (et éventuellement sa clé) pour effectuer un traitement répétitif sans risque d'erreur d'index.
C'est un tableau qui contient lui-même d'autres tableaux à l'intérieur de ses cases. On peut l'imaginer comme une grille ou un tableau à double entrée, permettant de représenter des structures de données plus riches comme des listes de produits ou des coordonnées.
Il s'agit d'un outil intégré qui permet de déterminer instantanément le nombre total d'entrées présentes dans une structure de données. C'est essentiel pour savoir combien de fois une opération doit être répétée ou si une liste est vide.
Ces fonctions permettent de faire le pont entre le texte brut et les listes organisées. On peut soit transformer une phrase en une liste de mots, soit réunir les éléments d'une liste pour former une seule chaîne de caractères structurée.
Ce symbole graphique est utilisé exclusivement lors de la création de listes personnalisées pour lier une étiquette à sa donnée. Il indique clairement au script que telle clé doit pointer vers telle valeur spécifique.
C'est une méthode d'affichage technique qui permet de visualiser toute la structure interne d'une variable complexe à l'écran. C'est une étape cruciale pour le développeur afin de vérifier que les données sont correctement enregistrées et organisées.
Cette technique permet d'insérer de nouvelles informations dans une liste existante sans avoir à redéfinir tout le contenu. On peut ainsi agrandir une collection de données au fur et à mesure des besoins du programme.
Ensemble de procédés permettant de réorganiser les éléments d'une liste selon une logique précise, comme l'ordre alphabétique ou numérique. Cela facilite grandement la recherche et l'affichage des informations pour l'utilisateur final.
Il s'agit de l'action de retirer définitivement une valeur ou une clé spécifique d'une collection. Cette opération libère de l'espace mémoire et permet de garder la liste de données propre et à jour.
C'est un mécanisme de sécurité qui contrôle si une information ou une étiquette particulière est présente avant de tenter de l'utiliser. Cela évite au programme de planter en essayant d'accéder à quelque chose qui n'existe pas.
Ce concept décrit une organisation où le dernier élément ajouté est obligatoirement le premier à être retiré. C'est un mode de gestion des données très courant pour gérer des historiques ou des files d'attente spécifiques.
À propos de ce QCM
L'apprentissage des structures de données en PHP repose sur une compréhension progressive de l'organisation de l'information.
Au centre de ce domaine, nous trouvons la notion de variable capable de contenir plusieurs valeurs simultanément.
Cette approche permet de passer d'une programmation rigide à une gestion fluide et dynamique des données.
Les concepts abordés ici se divisent en plusieurs piliers fondamentaux.
Tout d'abord, la distinction entre les types de listes : d'un côté, les structures numériques basées sur un système d'indices automatiques commençant par zéro, et de l'autre, les systèmes d'associations où chaque donnée est liée à une clé textuelle personnalisée.
Cette flexibilité est l'une des grandes forces de PHP, car elle permet de modéliser des objets du monde réel très simplement.
Au-delà du simple stockage, vous développerez des compétences cruciales en manipulation de données.
Savoir parcourir une liste efficacement, extraire une information précise parmi des centaines, ou encore imbriquer des structures pour créer des ensembles multidimensionnels sont des savoir-faire essentiels.
La pratique régulière permet de maîtriser les fonctions natives de tri, de fusion et de recherche, qui sont autant de raccourcis puissants pour optimiser votre code.
L'objectif de cet entraînement est double.
D'une part, il s'agit de valider votre compréhension théorique des mécanismes internes du langage (comme la gestion de la mémoire ou les erreurs d'index).
D'autre part, cela vous prépare concrètement à la résolution de problèmes réels rencontrés en entreprise.
En vous exerçant à manipuler ces concepts, vous gagnez en autonomie et en assurance, transformant des notions parfois abstraites en outils concrets pour vos futurs projets de développement.
Cette approche structurée vous garantit une progression solide, que vous soyez en phase d'auto-évaluation ou en pleine préparation d'un concours technique.
Conclusion
En conclusion, la maîtrise des tableaux est une étape décisive dans votre parcours de développeur PHP.
Ces concepts forment la base sur laquelle reposent des architectures bien plus vastes.
En vous exerçant régulièrement et en comprenant la logique derrière chaque manipulation, vous consolidez des fondations qui vous serviront tout au long de votre carrière professionnelle.
La programmation est un art qui demande de la persévérance et de la pratique ; chaque notion assimilée ici est un pas de plus vers la création d'applications web performantes et robustes.
Continuez à explorer ces mécanismes avec curiosité, car c'est ainsi que vous passerez du statut d'apprenant à celui d'expert.