Tableaux multidimensionnels
Construisez et parcourez des tableaux de tableaux.
Tableaux multidimensionnels est une leçon PHP Academy gratuite sur CoddyKit. Ceci est la leçon 2 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage PHP Academy, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours PHP Academy comprend 4 leçons au total.
Tableaux multidimensionnels
Un tableau multidimensionnel est un tableau dont chaque élément est lui-même un tableau. Il est courant pour les données structurées, comme les résultats de base de données ou les arborescences de configuration.
Créer un tableau à deux dimensions
Créez et parcourez un tableau à deux dimensions :
<?php
$matrix = [
[1, 2, 3],
[4, 5, 6],
[7, 8, 9],
];
echo $matrix[1][2]; // 6 (row 1, col 2)
$matrix[0][0] = 99;
echo $matrix[0][0]; // 99Tableau de tableaux associatifs
Les ensembles de résultats de base de données sont souvent des tableaux de tableaux associatifs :
<?php
$users = [
['id' => 1, 'name' => 'Alice', 'role' => 'admin'],
['id' => 2, 'name' => 'Bob', 'role' => 'user'],
['id' => 3, 'name' => 'Carol', 'role' => 'user'],
];
echo $users[0]['name']; // Alice
echo count($users); // 3Parcourir des tableaux à deux dimensions
Utilisez des boucles foreach imbriquées pour parcourir toutes les lignes et les colonnes :
<?php
$products = [
['name' => 'Widget', 'price' => 9.99],
['name' => 'Gadget', 'price' => 24.99],
];
foreach ($products as $product) {
echo $product['name'] . ': $' . $product['price'] . PHP_EOL;
}Accéder aux clés imbriquées en toute sécurité
Utilisez l'opérateur de coalescence nulle pour accéder en toute sécurité aux clés imbriquées qui peuvent ne pas exister :
<?php
$config = [
'database' => ['host' => 'localhost', 'port' => 3306],
'cache' => ['driver' => 'redis'],
];
$port = $config['database']['port'] ?? 3306;
$password = $config['database']['password'] ?? '';
echo $port; // 3306
echo $password; // (empty)Ajouter des éléments à des tableaux imbriqués
Ajoutez des éléments en profondeur dans un tableau multidimensionnel :
<?php
$app = [];
$app['settings']['theme'] = 'dark';
$app['settings']['lang'] = 'en';
$app['users'][] = ['name' => 'Alice'];
$app['users'][] = ['name' => 'Bob'];
echo count($app['users']); // 2
echo $app['settings']['theme']; // darkarray_column()
array_column() extrait une seule colonne d'un tableau à deux dimensions :
<?php
$users = [
['id' => 1, 'name' => 'Alice'],
['id' => 2, 'name' => 'Bob'],
['id' => 3, 'name' => 'Carol'],
];
$names = array_column($users, 'name');
print_r($names); // ['Alice', 'Bob', 'Carol']
// Re-index by id
$byId = array_column($users, null, 'id');
echo $byId[2]['name']; // BobTrier un tableau à deux dimensions
Triez les lignes selon la valeur d'un champ avec usort() :
<?php
$products = [
['name' => 'C Item', 'price' => 30],
['name' => 'A Item', 'price' => 10],
['name' => 'B Item', 'price' => 20],
];
usort($products, fn($a, $b) => $a['price'] <=> $b['price']);
foreach ($products as $p) {
echo $p['name'] . PHP_EOL; // A Item, B Item, C Item
}Opérations récursives avec array_walk_recursive
Appliquez une fonction de rappel à chaque élément terminal d'un tableau imbriqué avec array_walk_recursive() :
<?php
$data = ['a' => 'hello', 'b' => ['c' => 'world', 'd' => 'php']];
array_walk_recursive($data, function(&$val) {
$val = strtoupper($val);
});
print_r($data);
// ['a'=>'HELLO', 'b'=>['c'=>'WORLD','d'=>'PHP']]JSON et tableaux multidimensionnels
Les tableaux multidimensionnels PHP correspondent directement aux objets et aux tableaux JSON :
<?php
$data = [
'user' => ['id' => 1, 'name' => 'Alice'],
'scores' => [95, 87, 92],
'active' => true,
];
$json = json_encode($data, JSON_PRETTY_PRINT);
echo $json;
$decoded = json_decode($json, true); // true = assoc array
echo $decoded['user']['name']; // Alicearray_merge contre array_replace pour les tableaux imbriqués
array_merge n'est pas récursif ; utilisez array_replace_recursive pour fusionner correctement des tableaux imbriqués :
<?php
$defaults = ['db' => ['host' => 'localhost', 'port' => 3306]];
$custom = ['db' => ['host' => 'production.server.com']];
$config = array_replace_recursive($defaults, $custom);
echo $config['db']['host']; // production.server.com
echo $config['db']['port']; // 3306 — preserved from defaultsVérification rapide
Quelle fonction extrait une seule colonne de valeurs d'un tableau à deux dimensions ?
Récapitulatif : tableaux multidimensionnels
Points essentiels :
- Imbriquez les tableaux à n'importe quelle profondeur
- Utilisez
??pour accéder en toute sécurité aux clés imbriquées manquantes array_column()extrait une colonne ou réindexe le tableau à partir d'une cléusort()associé à un comparateur trie selon n'importe quel champarray_walk_recursive()permet d'effectuer des transformations en profondeurarray_replace_recursive()permet d'effectuer des fusions en profondeur
Questions Fréquemment Posées
La leçon « Tableaux multidimensionnels » est-elle gratuite ?
Oui — le texte complet de « Tableaux multidimensionnels » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours PHP Academy, passe à CoddyKit PRO. Le cours PHP Academy comprend 4 leçons au total.
Qu'est-ce que j'apprendrai dans « Tableaux multidimensionnels » ?
Construisez et parcourez des tableaux de tableaux. Tu pratiques PHP Academy avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.
Dois-je avoir de l'expérience pour commencer PHP Academy ?
Aucune expérience préalable n'est requise. PHP Academy sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 2 sur 4.
Combien de temps prend la leçon « Tableaux multidimensionnels » ?
La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.
Peux-tu écrire et exécuter du code dans cette leçon PHP Academy ?
Oui. Chaque leçon PHP Academy inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.
Toutes les leçons de ce cours
- Tableaux indexés et associatifs
- Tableaux multidimensionnels
- Trier et rechercher dans des tableaux
- Fonctions de transformation des tableaux