formations / php / les-tableaux

Débutant
cgoupil1970 | 25-10-2023

Les tableaux

En Php comme dans les autres langages, les tableaux sont des objets important permettant de structurer les données et de pouvoir ensuite travailler avec en les parcourant notamment avec des boucles. Ultérieurement on obtiendra des tableaux suite à des requêtes sur une base de données.

Créer un tableau

Tableau indexé

<?php
    // ====================================================== //
    // ================== TABLEAUX INDEXES ================== //
    // ====================================================== //
    $tableau1 = array("Pomme", "Poire", "Banane", "Fraise", "Framboise");
    $tableau2 = ["Pomme", "Poire", "Banane", "Fraise", "Framboise"];
?>

Comme le montre le code, les tableaux indéxés peuvent être déclarés avec array ou des crochets [], ensuite, on énumére les colonnes et leur contenu en ajoutant des valeurs séparées par une virgule.

Pour accèder au contenu d'une colonne du tableau, on utilise le numéro de la colonne (l'index). Par exemple si on veut afficher le mot pomme dans la page on fait un echo comme ceci :

<?php
    // ====================================================== //
    // ================== TABLEAUX INDEXES ================== //
    // ====================================================== //
    $tableau1 = array("Pomme", "Poire", "Banane", "Fraise", "Framboise");
    $tableau2 = ["Pomme", "Poire", "Banane", "Fraise", "Framboise"];
    echo $tableau1[0] . "<br>";
?>

Il est à noter que la première colonne d'un tableau porte le numéro d'index 0. On peut connaitre le nombre de colonnes d'un tableau avec la function count de Php. 

Dans notre exemple, le tableau1 comporte 5 colonne avec des index de 0 à 4. De sorte que si on affiche on aura bien 5 mais la dernière colonne sera accessible avec l'index 4 puisque l'on démmare à l'index 0.

<?php
    // ====================================================== //
    // ================== TABLEAUX INDEXES ================== //
    // ====================================================== //
    $tableau1 = array("Pomme", "Poire", "Banane", "Fraise", "Framboise");
    $tableau2 = ["Pomme", "Poire", "Banane", "Fraise", "Framboise"];
    echo $tableau1[0] . "<br>";
    echo "La longueur du tableau1 est de :".count($tableau1)."<br>";
    echo "La dernière colonne du tableau1 contient le mot :".$tableau1[count($tableau1)-1]."<br>";
    // count($tableau1)-1 est égal à 4
?>

Tableau associatif

Une autre méthode de déclaration d'un tableau et la méthode associative, cette fois-ci, les colonnes vont être nommées plutôt que d'être indexées. Les tableaux associatifs se déclarent comme les tableaux indexés avec array ou encore des crochets [].

Pour accèder au contenu d'une colonne on utilisera le nom de celle-ci et non son numéro d'index même si cela reste possible.

<?php
    // ====================================================== //
    // ================ TABLEAUX ASSOCIATIFS ================ //
    // ====================================================== //
    // Déclaration des deux tableaux associatifs
    $tableau3 = array(
        "fruit1" => "Pomme",
        "fruit2" => "Poire",
        "fruit3" => "Banane",
        "fruit4" => "Fraise",
        "fruit5" => "Framboise"
    );
    $tableau4 = [
        "fruit1" => "Pomme",
        "fruit2" => "Poire",
        "fruit3" => "Banane",
        "fruit4" => "Fraise",
        "fruit5" => "Framboise"
    ];
    // On affiche le contenu de la colonne "fruit1" du tableau3
    echo $tableau3["fruit1"] . "<br>";
?>

Manipuler les tableaux

On peut manipuler les tableaux en ajoutant de nouvelles colonnes ou bien encore en supprimant.

Ajouter une colonne

Pour ajouter une colonne dans un tableaux indexé ou encore un tableau associatif, procéder comme suit :

<?php
    // ====================================================== //
    // ================= AJOUTER UNE COLONNE ================ //
    // ====================================================== //
    // On ajoute un fruit dans le tableau indexé $tableau1
    $tableau1[] = "Kiwi";
    // On ajoute un fruit dans le tableau associatif $tableau3
    $tableau3["fruit6"] = "Kiwi";
?>

Supprimer une colonne

En php, pour supprimer une entrée d'un tableau on peut utiliser la fonction native unset, on peut également utiliser la fonction native array_splice qui permet de supprimer plusieurs colonnes comme l'illustre les exemples ci-dessous :

<?php
    // ====================================================== //
    // ================ SUPPRIMER UNE COLONNE =============== //
    // ====================================================== //
    // On supprime la colonne contenant le mot "banane" du tableau indexé $tableau1
    unset($tableau1[2]);
    // On affiche le tableau modifié
    print_r($tableau1);
    echo "<br>";
    // On supprime la colonne contenant le mot "banane" du tableau associatif $tableau3
    unset($tableau3["fruit3"]);
    // On affiche le tableau modifié
    print_r($tableau3);
    echo "<br>";
    // On supprime les colonnes contenant les mots "poire" et "banane" du tableau associatif $tableau2
    array_splice($tableau2, 1, 2);// Les trois paramètres sont : le tableau, l'index de départ, le nombre de colonnes à supprimer
    // On affiche le tableau modifié
    print_r($tableau2);
    echo "<br>";
    // On ajoute le mot cerise à l'index 1 du tableau $tableau2
    array_splice($tableau2, 1, 0, "Cerise");// Les quatre paramètres sont : le tableau, l'index de départ, le nombre de colonnes à supprimer, le mot à ajouter
?>

Comme évoqué dans le code précédent, on peut également utiliser la fonction array_splice pour ajouter une valeur à un index défini.

Il est à noté également que la fonction unset peut également servir à supprimer plusieurs colonnes simultanément, il suffit pour cela d'énumérer les colonnes concernées.

<?php
    $tableau5 = array("Pomme", "Poire", "Banane", "Fraise", "Framboise");
    unset($tableau5[2], $tableau5[3]); // On supprime les colonnes contenant les mots "banane" et "fraise"
    // On affiche le tableau modifié
    print_r($tableau5);
?>

Tester tout ça avec le fichier source du cours.

Maintenant que nous savons déclarer et manipuler des tableaux, il est intérressant de les utiliser à l'aide des boucles.

Tutos du jour

Choisir une couleur

Choisir une couleur

Choisir une couleur.

Voir le tuto
Les dates en PHP

Les dates en PHP

La manipulation des dates pour le web revêt un caractère fondamentale.

Voir le tuto
Votre inscription à la newsletter a bien été prise en compte. Une erreur est survenue lors de l'inscription à la newsletter. Votre désinscription à la newsletter a bien été prise en compte. Une erreur est survenue lors de la désinscription à la newsletter.

Inscription à la newsletter

Désinscription de la newsletter