Manipulation de tableaux (tableaux indexés et associatifs)

Header :

En PHP, les tableaux sont des structures de données flexibles qui permettent de stocker et de manipuler des ensembles de valeurs. Il existe deux types principaux de tableaux : les tableaux indexés et les tableaux associatifs.


Body

Tableau Indexé

Déclaration de Tableau Indexé

La déclaration d'un tableau indexé se fait en utilisant la fonction array ou la syntaxe courte [] :

<?php
// Avec la fonction array
$tableau = array("Premier", "Deuxième", "Troisième");

// Avec la syntaxe courte []
$tableau = ["Premier", "Deuxième", "Troisième"];
?>

Accéder à un Élément du Tableau

Pour accéder à un élément spécifique du tableau, utilisez son indice numérique :

<?php
$tableau = ["Premier", "Deuxième", "Troisième"];
echo $tableau[1]; // Affiche : Deuxième
?>

Remplacer un Élément du Tableau

Vous pouvez remplacer la valeur d'un élément en utilisant son indice :

<?php
$tableau = ["Premier", "Deuxième", "Troisième"];
$tableau[1] = "Nouveau Deuxième";
?>

Ajouter un Élément

Pour ajouter un nouvel élément à la fin du tableau, utilisez la syntaxe courte [] :

<?php
$tableau = ["Premier", "Deuxième", "Troisième"];
$tableau[] = "Quatrième";
?>

Supprimer un Élément

PHP ne propose pas de fonction directe pour supprimer un élément d'un tableau indexé sans laisser un trou. Vous pouvez utiliser la fonction unset pour supprimer un élément en spécifiant son indice :

<?php
$tableau = ["Premier", "Deuxième", "Troisième"];
unset($tableau[1]);
?>

Attention, cependant, ceci ne permet pas de déplacer (shift) le tableau par la même occasion, et après ça, l'index supprimé sera juste vide, mais les éléments suivant ne prendront pas la/les nouvelles places vide. On verra une autre solution dans le chapitre suivant

Afficher Tous les Éléments avec une Boucle for

Utilisez une boucle for pour parcourir tous les éléments du tableau indexé :

<?php
$tableau = ["Premier", "Deuxième", "Troisième"];

for ($i = 0; $i < count($tableau); $i++) {
    echo $tableau[$i] . " ";
}
// Affiche : Premier Deuxième Troisième
?>

Afficher Tous les Éléments avec une Boucle foreach

La boucle foreach est souvent plus concise pour parcourir les tableaux indexés :

<?php
$tableau = ["Premier", "Deuxième", "Troisième"];

foreach ($tableau as $element) {
    echo $element . " ";
}
// Affiche : Premier Deuxième Troisième
?>

Tableaux Associatifs

Les tableau associatifs fonctionnent presque de la même manière (j'appelle ça parfois un dictionnaire par abus de langage en PHP), à la seule différence qu'au lieu d'avoir des indexes fixe et chiffré, ce sont des string, comme dans un dictionnaire, on cherche un mot pour avoir sa définition, ici on cherche un mot pour trouver ce qu'il stocke.

Déclaration de Tableau Associatif

La déclaration d'un tableau associatif se fait en utilisant la fonction array avec des paires clé-valeur :

<?php
// Avec la fonction array
$tableauAssociatif = array(
    "nom" => "John",
    "age" => 30,
    "ville" => "Paris"
);

// Syntaxe courte
$tableauAssociatif = [
    "nom" => "John",
    "age" => 30,
    "ville" => "Paris"
];
?>

Accéder à un Élément du Tableau Associatif

Pour accéder à un élément spécifique du tableau associatif, utilisez la clé associée à cet élément :

<?php
$tableauAssociatif = [
    "nom" => "John",
    "age" => 30,
    "ville" => "Paris"
];
echo $tableauAssociatif["nom"]; // Affiche : John
?>

Remplacer un Élément du Tableau Associatif

Vous pouvez remplacer la valeur d'un élément en utilisant sa clé :

<?php
$tableauAssociatif = [
    "nom" => "John",
    "age" => 30,
    "ville" => "Paris"
];
$tableauAssociatif["age"] = 31;
?>

Ajouter un Élément au Tableau Associatif

Pour ajouter un nouvel élément à un tableau associatif, utilisez une nouvelle clé avec la syntaxe courte [] :

<?php
$tableauAssociatif = [
    "nom" => "John",
    "age" => 30,
    "ville" => "Paris"
];
$tableauAssociatif["profession"] = "Développeur";
?>

Supprimer un Élément du Tableau Associatif

Utilisez la fonction unset avec la clé pour supprimer un élément d'un tableau associatif :

<?php
$tableauAssociatif = [
    "nom" => "John",
    "age" => 30,
    "ville" => "Paris"
];
unset($tableauAssociatif["age"]);
?>

Afficher Tous les Éléments avec une Boucle foreach

La boucle foreach est souvent utilisée pour parcourir les tableaux associatifs :

<?php
$tableauAssociatif = [
    "nom" => "John",
    "age" => 30,
    "ville" => "Paris"
];

foreach ($tableauAssociatif as $cle => $valeur) {
    echo $cle . ": " . $valeur . " ";
}
// Affiche : nom: John age: 30 ville: Paris
?>

Conclusion

La manipulation de tableaux en PHP offre une flexibilité significative pour organiser et traiter les données. Que ce soit avec des tableaux indexés ou associatifs, vous pouvez effectuer une variété d'opérations pour répondre aux besoins spécifiques de votre application.