Comment afficher un tableau à deux dimensions en php. Tableaux dans des exemples. Fonctions pour travailler avec des tableaux php

Continuons à étudier les tableaux. Dans les articles précédents, nous avons déjà appris comment déclarer des tableaux ; compris : à quoi ils servent et où ils peuvent être utilisés ; s'est familiarisé avec les tableaux multidimensionnels et associatifs. Il est maintenant temps de parler d’itération sur les éléments du tableau.
Il est souvent nécessaire de parcourir tous les éléments d’un tableau et d’effectuer une action sur eux.

Cela peut être fait de différentes manières : avec et sans boucles. Par exemple, dans l'article précédent, nous avons reçu toutes les clés d'un tableau associatif, les avons itérées et sorties à l'aide d'une boucle pour chaque. Là, nous ne nous sommes pas attardés sur le sujet de l'itération sur les éléments du tableau à l'aide d'une boucle, car cela mérite un sujet distinct.

Aujourd'hui, nous allons parler de la façon dont vous pouvez parcourir les éléments d'un tableau. Vous vous familiariserez avec un nombre suffisant de nouvelles fonctions. Eh bien, commençons !

Parlons d’abord de l’itération sur les éléments du tableau à l’aide de boucles.

Pour cela, 3 types de cycles sont utilisés pour, pour chaque et pendant.

Boucle à travers les éléments du tableau. boucle for()

Pour parcourir les éléments d’un tableau de liste, vous pouvez procéder comme suit :

1. Nous déclarons d’abord le tableau lui-même ;

3. Après avoir déclaré le cycle pour, où entre parenthèses nous définissons un compteur (la variable « i » est déclarée avec une valeur de zéro, si cette variable est inférieure au nombre total d'éléments du tableau, alors à chaque itération la valeur de « i » augmentera d'un );

4. Et dans le corps de la boucle, vous pouvez déjà spécifier quoi faire avec chaque élément du tableau. Vous pouvez par exemple simplement les afficher à l’écran.

Tout ce qui précède est illustré par le code suivant :

"; } ?>

À la suite de son exécution, nous verrons à l'écran les valeurs des éléments du tableau, chacun affiché sur une nouvelle ligne.

La boucle for et les tableaux associatifs

Mais cette méthode ne convient plus pour énumérer les éléments d'un tableau associatif pour la simple raison que les indices d'un tableau associatif ne sont pas des nombres, mais des chaînes.

Pour parcourir les éléments d'un tableau associatif pour vous pouvez utiliser la construction suivante :

" .$Mass[$clé] . "
"; } ?>

Comme vous pouvez le voir, nous avons déclaré un tableau associatif.

reset() – définit un pointeur vers le premier élément du tableau ;

next() – déplace le pointeur d'un élément du tableau vers l'avant ;

key() – renvoie la clé de l’élément actuel du tableau.

Et puis dans le corps de la boucle nous affichons l'index de l'élément du tableau, la flèche et la valeur de l'élément du tableau. Nous imprimons chaque paire index-valeur sur une nouvelle ligne.

Aussi au lieu de réinitialiser() peut être utilisé fin(), alors le pointeur sera placé sur le dernier élément du tableau. Mais dans ce cas il faut plutôt suivant() utiliser précédent() pour déplacer le pointeur vers l’arrière plutôt que vers l’avant.

De cette façon, nous pouvons parcourir les éléments d’un tableau associatif dans l’ordre inverse.

Comme vous le savez probablement, le cycle pour Il n'est pas seulement utilisé pour travailler avec des tableaux.

Mais la boucle suivante, que nous considérerons, est utilisée exclusivement pour travailler avec des tableaux.

Boucle à travers les éléments du tableau. boucle foreach()

Faire du vélo pour chaque() nous permet de travailler à la fois avec des tableaux de listes ordinaires et associatifs.

Voici un exemple de la façon dont fonctionne une boucle pour parcourir les éléments d'un tableau de liste simple et afficher toutes les valeurs des éléments du tableau à l'écran.

"; } ?>

En conséquence, nous verrons à l'écran toutes les valeurs des éléments de ce tableau.

Pour un tableau associatif, cette construction restera exactement la même (sauf bien sûr qu'au début on déclarera non pas un tableau liste, mais un tableau associatif) et encore une fois on verra à l'écran toutes les valeurs du éléments du tableau.

Mais si l'on veut afficher non seulement les valeurs des éléments, mais aussi leurs clés (rappelez-vous que pour les tableaux associatifs les index sont une valeur de chaîne), alors cette boucle devra être légèrement améliorée.

$value) ( ​​​​echo $key . "=>" . $value . "
"; } ?>

Et dans ce cas, nous verrons à l'écran une paire : clé - valeur, entre laquelle il y aura une flèche.

Boucle à travers les éléments du tableau. boucle while()

Une autre boucle que nous pouvons utiliser pour parcourir tous les éléments d'un tableau est la boucle alors que().

Dans le même temps, deux autres fonctions nous aideront, que nous utiliserons en conjonction avec ce cycle. Ce sont les fonctions liste() Et chaque().

Dans le cas de tableaux de listes, nous utiliserons cette boucle - comme ceci :

"; } ?>

Vous avez probablement déjà deviné que sur l'écran, nous verrons les valeurs des éléments du tableau.

Voici la fonction chaque() renvoie l'élément actuel du tableau, puis déplace le pointeur.

Dans le cas d'un tableau associatif, la procédure reste la même si l'on a seulement besoin d'obtenir les valeurs des éléments du tableau. Mais si l'on veut aussi obtenir la clé de chaque élément, alors le code devra être légèrement complété. Comme ça:

" . Valeur $ . "
"; } ?>

C'est ainsi que nous obtenons à la fois les clés et les valeurs.

Parcourir les éléments du tableau sans utiliser de boucles

Vous pouvez parcourir les éléments du tableau sans utiliser de boucles. Pour cela nous utiliserons une fonction spéciale tableau_walk().

Cette fonction fonctionne comme suit : elle vous permet d'appliquer séquentiellement une fonction créée séparément à tous les éléments du tableau. Autrement dit, nous créons d'abord une fonction indépendante, puis en utilisant tableau_walk() appliquez-le à chaque élément du tableau. De plus, dans une fonction créée indépendamment, nous pouvons prescrire toute action dont nous avons besoin sur un élément du tableau.

Créons une fonction qui imprimera la clé et la valeur d'un élément du tableau à l'écran, puis utiliserons tableau_walk() appliquez-le à chaque élément de notre tableau.

" . Valeur $ . "
"; ) $Mass["One"] = 5; $Mass["Two"] = 10; $Mass["Three"] = 15; array_walk($Mass, "f_print"); ?>

En conséquence, nous verrons ce qui suit à l’écran.

C'est probablement tout ce que je voulais vous dire sur l'itération sur les éléments du tableau.

Afin de mieux comprendre comment tout cela fonctionne, je vous conseille de réaliser chaque exemple vous-même, et peut-être de vous entraîner avec vos propres exemples.

Dans le prochain article, nous parlerons de l'ajout et de la suppression d'éléments de tableau à différents endroits.

J'attends tes commentaires avec impatience. Partagez l'article avec vos amis en utilisant les boutons des réseaux sociaux et abonnez-vous aux mises à jour du blog pour être toujours au courant des nouvelles publications.

Anna Kotelnikova était avec vous. Bonne chance et à bientôt !

Un tableau ne doit pas nécessairement être une simple liste de clés et de valeurs simples. Chaque élément d'un tableau peut contenir comme valeur un autre tableau, qui à son tour peut également contenir un tableau, et ainsi de suite. De cette façon, vous pouvez créer des tableaux bidimensionnels et tridimensionnels.

Tableaux bidimensionnels

Tableau bidimensionnel- un tableau qui stocke d'autres tableaux sous forme de valeurs. Pensez à créer un tableau à deux dimensions à l'aide du constructeur array() :

$fleurs = array(array("roses", 100 , 15), array("tulipes", 60 , 25), array("orchidées", 180 , 7));

Le tableau $flowers contient trois tableaux. Comme vous vous en souvenez, pour accéder aux éléments d'un tableau unidimensionnel, vous devez spécifier le nom et la clé du tableau. Il en va de même pour les tableaux à deux dimensions, à une exception près : chaque élément possède deux clés : la première pour sélectionner une ligne, la seconde pour sélectionner une colonne.

Pour afficher les éléments de ce tableau, vous pouvez attribuer manuellement l'accès à chacun d'eux, mais il est préférable d'utiliser des boucles imbriquées :

Accès manuel aux éléments
"; echo $fleurs." prix ".$fleurs." nombre de ".$fleurs."
"; echo $fleurs." prix ".$fleurs." nombre de ".$fleurs."
"; écho "

Utiliser des boucles pour imprimer des éléments

"; écho "
    "; pour ($ligne = 0; $ligne< 3; $row++) { echo "
  1. Numéro de ligne $ligne"; écho "
      "; pour ($col = 0; $col< 3; $col++) { echo "
    • ".$fleurs[$row][$col]."
    • "; ) écho "
    "; écho "
  2. "; ) écho "
"; ?>

Au lieu de numéros de colonnes (des index qui leur sont attribués par défaut), vous pouvez leur attribuer les clés nécessaires. Des tableaux associatifs sont utilisés à cet effet. Le tableau suivant stockera les mêmes données, mais en utilisant des clés pour nommer les colonnes d'informations :

$fleurs = array(array("Nom" => "roses", "Prix" => 100, "Quantité" => 15), array("Nom" => "tulipes", "Prix" => 60, " Quantité" => 25,), array("Nom" => "orchidées", "Prix" => 180, "Quantité" => 7));

Les clés créent une commodité supplémentaire pour travailler avec un tableau dans les cas où vous devez obtenir l'une des valeurs. Les données dont vous avez besoin peuvent être facilement trouvées en accédant à la cellule appropriée à l'aide de noms de lignes et de colonnes significatifs. Cependant, nous perdons la possibilité de parcourir le tableau de manière séquentielle à l'aide d'une boucle for.

Nous ne pouvons parcourir les tableaux enfants qu'en utilisant une boucle for. Puisqu'ils sont à leur tour associatifs, pour parcourir leurs éléments, vous devez utiliser une boucle foreach ou parcourir les éléments manuellement :

"roses", "Prix" => 100, "Quantité" => 15), array("Nom" => "tulipes", "Prix" => 60, "Quantité" => 25,), array("Nom " => "orchidées", "Prix" => 180, "Quantité" => 7)); écho "

Accès manuel aux éléments du tableau associatif

"; pour ($ligne = 0; $ligne< 3; $row++) { echo $flowers[$row]["Название"]." цена ".$flowers[$row]["Цена"] ." количество ".$flowers[$row]["Количество"]; echo "
"; ) écho "

Utiliser une boucle foreach pour accéder aux éléments

"; écho "
    "; pour ($ligne = 0; $ligne< 3; $row++) { echo "
  1. Numéro de ligne $ligne"; écho "
      "; foreach($flowers[$row] as $key => $value) ( ​​​​​echo "
    • ".$valeur."
    • "; ) écho "
    "; écho "
  2. "; ) écho "
"; ?>

Il n'est pas nécessaire d'utiliser le constructeur array() pour créer un tableau à deux dimensions ; vous pouvez également utiliser la syntaxe courte - crochets :

$fleurs = [ [ "Nom" => "roses", "Prix" => 100, "Quantité" => 15 ], [ "Nom" => "tulipes", "Prix" => 60, "Quantité" = > 25, ], [ "Nom" => "orchidées", "Prix" => 180, "Quantité" => 7 ] ];

Tableaux tridimensionnels

Vous n'êtes pas obligé de vous limiter à deux dimensions : tout comme les éléments d'un tableau peuvent contenir des tableaux, ces tableaux peuvent à leur tour contenir de nouveaux tableaux.

Un tableau tridimensionnel caractérise la largeur, la hauteur et la profondeur. Si vous représentez un tableau à deux dimensions sous forme de tableau, un tableau à trois dimensions ajoute des couches à ce tableau. Chaque élément d'un tel tableau fera référence à une couche, une ligne et une colonne.

Si vous modifiez légèrement notre tableau avec des fleurs, vous pouvez le convertir en trois dimensions. Dans le code ci-dessous, vous pouvez voir que tableau tridimensionnel- un tableau contenant un tableau de tableaux :

$fleurs = [ [ ["roses", 100 , 15], ["tulipes", 60 , 25], ["orchidées", 180 , 7] ], [ ["roses", 100 , 15], ["tulipes " ", 60, 25], ["orchidées", 180, 7], ], [ ["roses", 100, 15], ["tulipes", 60, 25], ["orchidées", 180, 7] ] ];

Puisque ce tableau ne contient que des indices numériques, nous pouvons utiliser des boucles imbriquées pour l'afficher :

"; pour ($couche = 0; $couche< 3; $layer++) { echo "

  • Numéro de couche $layer"; echo "
      "; pour ($ligne = 0; $ligne< 3; $row++) { echo "
    • Numéro de ligne $row"; echo "
        "; pour ($col = 0; $col< 3; $col++) { echo "
      • ".$flowers[$layer][$row][$col]."
      • "; ) écho "
      "; écho "
    • "; ) écho "
    "; écho "
  • "; ) écho ""; ?>

    1. Qu'est-ce qu'un tableau PHP ?
    2. Exemple de tableau PHP ?
    3. Tableau unidimensionnel (vecteur)
    - indice
    - associatif
    4. Tableau bidimensionnel (tableau dans un tableau, matrice)
    5. Fonctions pour travailler avec des tableaux (tableau dans un tableau, matrice)

    Je voudrais commencer ce sujet avec des exemples renoncés. Disons que nous envisageons certains personne. Il a prénom, nom, adresse, numéro de téléphone, sexe, taille, couleur des yeux et ainsi de suite. Les informations sur tous ces points peuvent être attribuées à un ensemble de données sur une personne.

    Le tableau peut être d'un type différent, sans aucune précision sur les éléments. Il n'y aura qu'un sujet. Disons ceci programmation web. Et les éléments seront des langues - HTML, CSS, Javascript, PHP, MySQL. Il y a 5 éléments au total.

    Sur la base du dernier exemple, supposons un tableau :

    programmation web
    1. HTML
    2.CSS
    3. Javascript
    4.PHP
    5. MySQL

    Regardez maintenant cet exemple et analysez les concepts de base.

    Tableau en PHP est un ensemble de données séquentiellement localisées du même type, liées par un thème commun, dont le nombre d'éléments est fixe.

    Le tableau dans cet exemple sera appelé programmation web.

    Chaque élément a sa propre place ordinale, identifiant.
    Indice(clé de tableau) - soit un numéro de séquence, soit une valeur textuelle par laquelle l'élément peut être identifié.

    Les index dans l'exemple ci-dessus seraient valeur numérique de 1 à 5. Lors de l'accès à l'index 2, nous verrons le CSS.

    Exemple de tableau en PHP

    Regardons maintenant l'exemple ci-dessus dans la syntaxe PHP, pas en russe. Disons que le tableau sera appelé plus court - la toile. Les crochets inséreront un index.

    Regardons un exemple simple de tableau, où les valeurs d'index contiendront des valeurs numériques, et nous créerons le tableau comme si nous attribuions des valeurs à des variables.

    $web='HTML';
    $web='CSS';
    $web='JavaScript';
    $web='PHP';
    $web='MySQL';

    $web ; // cette variable contient un tableau de 5 éléments

    // pour afficher l'un des éléments du tableau, il suffit de spécifier l'index dans le tableau
    écho $web; // imprime PHP

    Tableau unidimensionnel

    TABLEAU D'INDEX

    Ci-dessus, avec la programmation Web, nous n'avons examiné qu'un exemple de tableau unidimensionnel.
    Il est rarement créé de cette façon. Il montre plutôt visuellement la structure du tableau. Le plus souvent, ils recourent à une autre méthode.

    $web=array('HTML','CSS','JavaScript','PHP','MySQL');
    écho $web; // affichera 'HTML'
    écho $web; // affichera 'JavaScript'
    écho $web; // affichera 'PHP'

    Si vous souhaitez définir des valeurs d'index, vous devez les spécifier comme suit. Signe => est un pointeur pour attribuer un index à une valeur, ou vice versa à une valeur d'index.

    $web=array(1=>’HTML’,2=>’CSS’,3=>’JavaScript’,4=>’PHP’,5=>’MySQL’);
    écho $web; // HTML
    écho $web; // CSS
    écho $web; //PHP
    Dans l'exemple, le comptage part de 1. La variable d'indice 0 est donc vide.

    Dans l'exemple suivant, nous ne spécifierons pas d'index.

    $jour='Lundi'; // indice 0
    $day='Mardi'; // 1
    $day='Mercredi'; // 2
    $day='Jeudi'; // 3
    $jour='Vendredi'; // 4
    Vous pouvez voir que le remplissage séquentiel se fait à partir de zéro.

    RÉSEAU ASSOCIATIF

    Il est souvent nécessaire de créer un index de lettres pour un élément du tableau. Comme je l'ai mentionné ci-dessus, un tel index doit être composé de lettres latines et le nom doit être mis entre guillemets. Regardons l'exemple d'une personne.

    $user['nick']='Logique';
    $user['name']='Pavel';
    $user['âge']='25';
    $user['sex']='Homme';

    $utilisateur ; // la variable $user contient un tableau de 4 éléments avec des indices de lettres

    // affiche l'élément du tableau, en indiquant son indice de lettre
    echo $web['nom']; // affichera 'Pavel'
    Comme vous pouvez le constater, tout est assez simple. Nous citons uniquement la valeur de l'indice.

    Tableau bidimensionnel

    Si vous avez raté la première partie avec le One-Dimensional Array, je vous conseille fortement de la lire.
    Pour faire simple, il s’agit d’un tableau dans un tableau. Autrement dit, les éléments d’un large tableau sont différents. De tels tableaux ralentissent considérablement le travail du script, chargeant la RAM, donc pour traiter rapidement de tels groupes de données, des bases de données ont été créées (Qu'est-ce qu'une base de données ?), mais nous y reviendrons plus tard. Regardons un exemple de tableau à deux dimensions.

    // tableau avec les noms des parties du monde
    $m = array('Europe','Asie','Afrique','Amérique','Australie et Océanie');

    // tableau avec les noms des pays
    $s = array('Russie','Ukraine','Biélorussie','Kazakhstan');

    // tableau avec les noms des majuscules
    $с = array('Moscou','Kiev','Minsk','Astana');

    // crée un tableau bidimensionnel Géographie
    $géographie = tableau($m, $s, $c);
    ?>
    Les tableaux inclus, comme vous l'avez remarqué, peuvent avoir un nombre différent d'éléments. De la partie sur les tableaux unidimensionnels, il s'ensuit que chaque élément du tableau peut avoir un index. Attribuons donc une valeur différente à chaque tableau inclus.

    Pour ce faire, développez la dernière ligne et écrivez-la comme suit.

    $geography = array('Parties du monde'=>$m, 'Pays'=>$s, 'Capitales'=>$s);

    Fonctions pour travailler avec des tableaux php

    Pour chaque est une fonction cyclique pour travailler avec des tableaux, dans laquelle le nombre de cycles est égal au nombre d'éléments du tableau.

    Cela ressemble à ceci :

    Code PHP

    foreach (tableau sous la forme $key=>$value)
    équipes;
    Eh bien, tout de suite, un exemple de travail

    // crée un tableau avec le célèbre informatique
    $names["Ritchie"] = "Dennis";
    $names["Thompson"] = "Ken";
    $names["Portes"] = "Facture";
    $names["Jobs"] = "Steve";

    foreach ($noms comme $key => $value) (
    echo "$valeur $clé";
    }
    ?>
    Le script s'affichera à l'écran

    Dennis Ritchie
    Ken Thompson
    Bill Gates
    Steve Emplois
    Compter- une fonction qui renvoie le nombre d'éléments dans le tableau.

    nombre d'écho ($ noms); // dans notre exemple avec IT renverra la valeur 4
    Trier- une fonction qui trie les éléments du tableau. Pratique pour les valeurs d'index numériques.
    Arsort est une fonction qui trie les éléments d'un tableau dans l'ordre inverse.

    trier($noms); // trie dans l'ordre. C'est pratique s'il y a des chiffres dans l'index
    arsort($noms); // trier dans l'ordre inverse. Autrement dit, par indices, les éléments seront dans l'ordre 3, 2, 1, 0
    Désarmé est une fonction qui supprime un élément du tableau.

    non défini($tableau); // suppression d'un élément de tableau avec l'index 2
    non défini($tableau); // suppression de tout le tableau
    Tableau_recherche— fonction de recherche dans un tableau.

    Leçon 7. Tableaux en PHP

    A deux arguments. En termes simples, il a array_search('what',where)

    $animaux='chien';
    $animaux='chat';
    $animaux='oiseau';
    echo array_search('chat',$animaux); // affichera l'index de l'élément - numéro 2
    Mélanger est une fonction qui mélange les clés des valeurs du tableau.

    mélanger ($animaux); // arrange les éléments dans un ordre aléatoire
    Merci pour votre attention!

    Article précédent
    Leçon 6. Boucles en PHP Article suivant
    Leçon 8. Inclure un fichier en PHP. Inclure et exiger

    Commentaires sur l'article (vk.com)

    Crée un tableau vide.

    Vous pourrez ensuite vider les valeurs dans un tableau, comme ceci :

    Actuellement, $myArray contient "arbre", "maison" et "chien". Chacune des commandes ci-dessus s'ajoute au tableau, en préservant les éléments qui s'y trouvaient déjà.

    Venant d'autres langages, cette façon d'ajouter un tableau m'a paru étrange. Je m'attendais à faire quelque chose comme $myArray+="dog" ou quelque chose comme ça...

    ou peut-être une méthode "add()" telle que les collections Visual Basic. Mais cette syntaxe d’ajout direct est courte et pratique.

    Vous devriez en fait utiliser la fonction unset() pour supprimer des éléments :

    ... supprimera "house" du tableau (les tableaux sont basés sur null).

    Bases du travail avec des tableaux en PHP

    ... détruira tout le tableau.

    Pour être clair, la syntaxe des crochets vides pour l'ajout à un tableau est simplement un moyen de dire à PHP d'attribuer automatiquement des indices à chaque valeur, plutôt que d'attribuer des indices. Coverings, PHP fait réellement ceci :

    Vous pouvez attribuer vous-même des index si vous le souhaitez et utiliser les numéros de votre choix. Vous pouvez également attribuer des numéros d'index à certains éléments et pas à d'autres. Si vous faites cela, PHP remplira les numéros d'index manquants, en augmentant à partir du plus grand numéro d'index attribué au fur et à mesure de son arrivée.

    Donc si tu fais ça :

    ... l'élément "chien" se verra attribuer le numéro d'index 21. PHP ne fait pas de correspondance de modèles intelligente pour attribuer les indices un par un, donc il ne saura pas que vous souhaiterez peut-être attribuer le numéro d'index 30 à "chien". Vous pouvez utiliser d'autres fonctions pour spécifier le modèle d'incrémentation d'un tableau. Je n'entrerai pas dans les détails, mais tout est dans la documentation PHP.

    Dans certains autres langages (par exemple AS3), il a été noté que l'initialisation d'un nouveau tableau est plus rapide si elle est effectuée en tant que plutôt qu'à des fins de création et d'instanciation d'objets. Je me demande s'il existe des équivalences en PHP ?

    Tableaux en PHP. Travailler avec des tableaux en PHP.

    Cet article couvre l'utilisation de tableaux en PHP (bases). Les tableaux en PHP sont un type de données qui vous permet de stocker plusieurs variables en une seule.

    Voici un exemple simple :

    Dans l’exemple ci-dessus, $products est un tableau dans lequel nous avons stocké plusieurs produits différents. Ensuite, nous avons dérivé tous ces produits, en accédant à chacun via des « index » (clés) : 0, 1 et 2.

    Bien entendu, les valeurs individuelles peuvent également être stockées dans des variables distinctes, par exemple comme ceci :

    C'est bien sûr bien, mais imaginons que nous ayons soudain besoin de passer par tous ces éléments. Comment pouvons-nous être ici ? Écrire du code pour chaque variable ? C'est long et peu pratique. La solution consiste à utiliser des tableaux.
    A l'aide de boucles, on peut accéder à l'élément suivant à chaque itération (étape), grâce à des indices (clés).

    Création d'un tableau en PHP.

    Il n'est pas nécessaire de déclarer un tableau en PHP. Nous pouvons créer un tableau en utilisant la fonction array() :

    Dans ce cas, nous avons créé un tableau vide. Si l'on précise plusieurs valeurs entre parenthèses séparées par des virgules, alors nous remplirons ce tableau avec plusieurs éléments :

    Types de tableaux.

    1. Tableaux « indexés » ou « tableaux automatiques ». Nous avons déjà donné ci-dessus des exemples d’un tel tableau. Une particularité de ces tableaux est qu'ils possèdent des indices numériques créés automatiquement (« à la volée »). La numérotation des éléments commence à 0.

    Comment déterminer la longueur (taille) d'un tableau indexé.

    Utiliser des tableaux

    Utilisation de la fonction compter():

    Énumération des éléments. Vous pouvez énumérer tous les éléments d'un tableau automatique en utilisant la construction pour ou pour chaque:

    Pour ajouter un nouvel élément au tableau (écrire dans le tableau), il suffit d'exécuter la ligne suivante :

    L'itération sur tous les éléments d'un tableau associatif s'effectue comme suit :

    3. Les tableaux multidimensionnels contiennent d'autres tableaux comme éléments :

    Nous pouvons également créer un tableau tridimensionnel :

    produire un tableau en PHP. Vous pouvez afficher n'importe quel tableau en utilisant la fonction print_r(), Par exemple:

    Cependant, lorsqu'un élément est supprimé, les indices des autres éléments restent inchangés.

    Fonctions pour travailler avec des tableaux :

    Tri des tableaux
    array_search – recherche une valeur dans un tableau

    Dernière mise à jour : 11/1/2015

    Les tableaux sont conçus pour stocker des ensembles de données ou d’éléments. Chaque élément du tableau a sa propre clé et sa propre valeur. Alors, enregistrons la liste des modèles de téléphones dans un tableau :

    "; ?>

    Ici, un tableau $phones est créé avec quatre éléments. Chaque élément du tableau représente une paire clé-valeur. Ainsi, le premier élément $phones = "Nokia N9" a une clé - le chiffre 0, et une valeur - la chaîne "Nokia N9". Dans de tels tableaux, les touches numériques sont également appelées index.

    Vous pouvez utiliser la fonction count() pour connaître le nombre d’éléments dans un tableau. Et comme les clés sont dans l'ordre de 0 à 3 et connaissant la taille du tableau, vous pouvez afficher les éléments du tableau dans une boucle for.

    Pour rendre plus claire la relation entre les clés et les valeurs des éléments, imprimons le tableau à l'aide de la fonction print_r :

    Print_r($téléphones);

    Nous obtiendrons le résultat suivant :

    Tableau ( => Nokia N9 => Samsung Galaxy ACE II => Sony Xperia Z3 => Samsung Galaxy III)

    Cette création de tableau équivaudrait également à ce qui suit :

    "; ?>

    Si aucune clé d'élément n'est spécifiée, PHP utilise des nombres comme clés. Dans ce cas, la numérotation des clés commence à zéro et chaque nouvelle clé augmente de une.

    Connaissant la clé d'un élément dans un tableau, on peut accéder à cet élément, obtenir ou modifier sa valeur :

    // récupère l'élément par clé 1 $myPhone = $phones; echo "$monTéléphone
    "; // attribution d'une nouvelle valeur $phones = "Samsung X650"; echo "$phones
    ";

    Mais non seulement les entiers, mais aussi les chaînes peuvent être utilisées comme clés :

    De tels tableaux sont également appelés associatif.

    opérateur de tableau

    Une façon de créer un tableau a été évoquée ci-dessus. Mais il y en a un autre, qui implique l’utilisation de l’opérateur array().

    L'opérateur array() prend un ensemble d'éléments. Les clés ne sont pas non plus explicitement spécifiées ici. Par conséquent, PHP numérote automatiquement les éléments à partir de zéro. Mais on peut aussi spécifier une clé pour chaque élément :

    "iPhone5", "samsumg" => "Samsung Galaxy III", "nokia" => "Nokia N9", "sony" => "Sony XPeria Z3"); echo $phones["samsumg"]; ?>

    L'opération => vous permet de mapper une clé à une valeur spécifique.

    Itérer sur des tableaux associatifs

    Ci-dessus, nous avons vu comment utiliser une boucle for pour afficher tous les éléments d'un tableau, où les clés sont spécifiées séquentiellement par des nombres de 0 à 3. Cependant, cela ne fonctionne pas avec les tableaux associatifs. Et pour eux, PHP a un type spécial de boucle - foreach...as :

    "iPhone5", "samsumg" => "Samsung Galaxy III", "nokia" => "Nokia N9", "sony" => "Sony XPeria Z3"); foreach($phones comme $item) echo "$item
    "; ?>

    Dans une boucle foreach, tous les éléments sont supprimés séquentiellement du tableau et leur valeur est placée dans la variable spécifiée après le mot-clé as. Dans ce cas, les quatre valeurs du tableau $phones sont placées tour à tour dans la variable $item. Lorsque le dernier élément du tableau est récupéré, la boucle se termine.

    La boucle foreach permet de récupérer non seulement des valeurs, mais aussi des clés d'éléments :

    "iPhone5", "samsumg" => "Samsung Galaxy III", "nokia" => "Nokia N9", "sony" => "Sony XPeria Z3"); foreach($phones as $key=>$value) echo "$key => $value
    "; ?>

    Ici, lors de l'itération sur les éléments de la boucle, la clé de l'élément sera transférée à la variable $key et sa valeur sera transférée à la variable $value.

    Une alternative à la boucle foreach consiste à utiliser la liste et les fonctions each :

    "iPhone5", "samsumg" => "Samsung Galaxy III", "nokia" => "Nokia N9", "sony" => "Sony XPeria Z3"); while (list($key, $value) = each($phones)) echo "$key => $value
    "; ?>

    La boucle while s'exécutera jusqu'à ce que chaque fonction renvoie false . La fonction each parcourt tous les éléments du tableau $phones et le renvoie sous la forme d'un tableau comprenant la clé et la valeur de l'élément. Ce tableau est ensuite transmis à la fonction list et les valeurs du tableau sont affectées aux variables entre parenthèses. Lorsque chaque fonction aura fini de parcourir le tableau $phones, elle renverra false et la boucle while se terminera.

    Tableaux multidimensionnels

    Dans les exemples précédents, seuls les tableaux unidimensionnels ont été pris en compte, où les valeurs des éléments représentaient des nombres ou des chaînes. Mais en PHP, les tableaux peuvent également être multidimensionnels, c'est-à-dire ceux dans lesquels un élément du tableau est lui-même un tableau. Par exemple, créons un tableau multidimensionnel :

    array("iPhone5", "iPhone5s", "iPhone6") , "samsumg"=>array("Samsung Galaxy III", "Samsung Galaxy ACE II"), "nokia" => array("Nokia N9", "Nokia Lumia 930"), "sony" => array("Sony XPeria Z3", "Xperia Z3 Dual", "Xperia T2 Ultra")); foreach ($téléphones comme $brand => $items) ( echo "

    $marque

    "; écho "
      "; foreach ($items as $key => $value) ( ​​​​echo "
    • valeur $
    • "; ) écho "
    "; } ?>

    Et lors de la sortie, nous obtiendrons 4 listes :

    Pour accéder à un élément donné, vous devez également préciser les clés entre crochets. Par exemple, regardons le premier élément du premier tableau. Puisque la clé du premier tableau est "apple" et que la clé du premier élément du premier tableau est le chiffre 0 (puisque nous n'avons pas explicitement spécifié les clés) :

    Echo $phones["pomme"];

    Vous pouvez obtenir le deuxième élément du troisième tableau de la même manière :

    Echo $phones["nokia"];

    Disons que les tableaux imbriqués représentent également des tableaux associatifs :

    array("apple" => "iPhone5", "samsumg" => "Samsung Galaxy III", "nokia" => "Nokia N9"), "tablets" => array("lenovo" => "Lenovo IdeaTab A3500" , "samsung" => "Samsung Galaxy Tab 4", "apple" => "Apple iPad Air")); foreach ($technics as $tovar => $items) ( echo "

    $produit

    "; écho "
      "; foreach ($items as $key => $value) ( ​​​​echo "
    • $clé : $valeur
    • "; ) écho "
    "; ) // assigne une valeur différente à l'un des éléments $technics["phones"]["nokia"] = "Nokia Lumnia 930"; // affiche cette valeur echo $technics["phones"]["nokia" ]; ? >

    (tableau dans un tableau, matrice)
    5. Fonctions pour travailler avec des tableaux (tableau dans un tableau, matrice)

    Qu'est-ce qu'un tableau PHP ?

    Je voudrais commencer ce sujet avec des exemples renoncés. Disons que nous envisageons certains personne. Il a prénom, nom, adresse, numéro de téléphone, sexe, taille, couleur des yeux et ainsi de suite. Les informations sur tous ces points peuvent être attribuées à un ensemble de données sur une personne.

    Le tableau peut être d'un type différent, sans aucune précision sur les éléments. Il n'y aura qu'un sujet. Disons ceci programmation web. Et les éléments seront des langues - HTML, CSS, Javascript, PHP, MySQL. Il y a 5 éléments au total.

    Sur la base du dernier exemple, supposons un tableau :

    programmation web
    1. HTML
    2.CSS
    3. Javascript
    4.PHP
    5. MySQL

    Regardez maintenant cet exemple et analysez les concepts de base.

    Tableau en PHP est un ensemble de données séquentiellement localisées du même type, liées par un thème commun, dont le nombre d'éléments est fixe.

    Le tableau dans cet exemple sera appelé programmation web.

    Chaque élément a sa propre place ordinale, identifiant.
    Indice(clé de tableau) - soit un numéro de séquence, soit une valeur de texte par laquelle un élément peut être identifié.

    Les index dans l'exemple ci-dessus seraient valeur numérique de 1 à 5. Lors de l'accès à l'index 2, nous verrons le CSS.

    Exemple de tableau en PHP

    Regardons maintenant l'exemple ci-dessus dans la syntaxe PHP, pas en russe. Disons que le tableau sera appelé plus court - la toile. Les crochets inséreront un index.
    Regardons un exemple simple de tableau, où les valeurs d'index contiendront des valeurs numériques, et nous créerons le tableau comme si nous attribuions des valeurs à des variables.

    $web="HTML";
    $web="CSS";
    $web="JavaScript";
    $web="PHP";
    $web="MySQL" ;

    $web ; // cette variable contient un tableau de 5 éléments

    // pour afficher l'un des éléments du tableau, il suffit de spécifier l'index dans le tableau
    écho $web; // imprime PHP

    Tableau unidimensionnel

    TABLEAU D'INDEX

    Ci-dessus, avec la programmation Web, nous n'avons examiné qu'un exemple de tableau unidimensionnel.
    Il est rarement créé de cette façon. Il montre plutôt visuellement la structure du tableau. Le plus souvent, ils recourent à une autre méthode.

    $web=array("HTML","CSS","JavaScript","PHP","MySQL");
    écho $web; // affichera "HTML"
    écho $web; // affichera "JavaScript"
    écho $web; // affichera "PHP"

    Si vous souhaitez définir des valeurs d'index, vous devez les spécifier comme suit. Signe => est un pointeur pour attribuer un index à une valeur, ou vice versa à une valeur d'index.

    $web=array(1=>"HTML",2=>"CSS",3=>"JavaScript",4=>"PHP",5=>"MySQL");
    écho $web; // HTML
    écho $web; // CSS
    écho $web; //PHP
    Dans l'exemple, le comptage part de 1. La variable d'indice 0 est donc vide.

    Dans l'exemple suivant, nous ne spécifierons pas d'index.

    $jour="Lundi"; // indice 0
    $day="Mardi"; // 1
    $day="Mercredi"; // 2
    $day="Jeudi"; // 3
    $day="Vendredi"; // 4
    Vous pouvez voir que le remplissage séquentiel se fait à partir de zéro.

    RÉSEAU ASSOCIATIF

    Il est souvent nécessaire de créer un index de lettres pour un élément du tableau. Comme je l'ai mentionné ci-dessus, un tel index doit être composé de lettres latines et le nom doit être mis entre guillemets. Regardons l'exemple d'une personne.

    $user["nick"]="Logique";
    $user["name"]="Pavel";
    $user["âge"]="25";
    $user["sex"]="Homme";

    $utilisateur ; // la variable $user contient un tableau de 4 éléments avec des indices de lettres

    // affiche l'élément du tableau, en indiquant son indice de lettre
    echo $web["nom"]; // affichera "Pavel"
    Comme vous pouvez le constater, tout est assez simple. Nous citons uniquement la valeur de l'indice.

    Tableau bidimensionnel

    Si vous avez manqué la première partie avec un tableau unidimensionnel, je vous conseille fortement de la lire.
    Pour faire simple, il s’agit d’un tableau dans un tableau. Autrement dit, les éléments d’un large tableau sont différents. De tels tableaux ralentissent considérablement le travail du script, chargeant la RAM, donc pour traiter rapidement de tels groupes de données, des bases de données ont été créées (Qu'est-ce qu'une base de données ?), mais nous y reviendrons plus tard. Regardons un exemple de tableau à deux dimensions.

    // tableau avec les noms des parties du monde
    $m = array("Europe","Asie","Afrique","Amérique","Australie et Océanie");

    // tableau avec les noms des pays
    $s = array("Russie","Ukraine","Biélorussie","Kazakhstan");

    // tableau avec les noms des majuscules
    $с = array("Moscou","Kiev","Minsk","Astana");

    // crée un tableau bidimensionnel Géographie
    $géographie = tableau($m, $s, $c);
    ?>
    Les tableaux inclus, comme vous l'avez remarqué, peuvent avoir un nombre différent d'éléments. De la partie sur les tableaux unidimensionnels, il s'ensuit que chaque élément du tableau peut avoir un index. Attribuons donc une valeur différente à chaque tableau inclus.

    Pour ce faire, développez la dernière ligne et écrivez-la comme suit.

    $geography = array("Parties du monde"=>$m, "Pays"=>$s, "Capitales"=>$s);

    Fonctions pour travailler avec des tableaux php

    Pour chaque- une fonction cyclique pour travailler avec des tableaux, dans laquelle le nombre de cycles est égal au nombre d'éléments du tableau.

    Cela ressemble à ceci : Code PHP

    Foreach (tableau sous la forme $key=>$value)
    équipes;
    Eh bien, tout de suite, un exemple de travail

    // crée un tableau avec le célèbre informatique
    $names["Ritchie"] = "Dennis";
    $names["Thompson"] = "Ken";
    $names["Portes"] = "Facture";
    $names["Jobs"] = "Steve";

    Foreach ($noms comme $key => $value) (
    echo "$valeur $clé";
    }
    ?>
    Le script s'affichera à l'écran

    Dennis Ritchie
    Ken Thompson
    Bill Gates
    Steve Emplois
    Compter- une fonction qui renvoie le nombre d'éléments dans le tableau.

    Nombre d'écho ($ noms); // dans notre exemple avec IT renverra la valeur 4
    Trier- une fonction qui trie les éléments du tableau. Pratique pour les valeurs d'index numériques.
    Arsort- une fonction qui trie les éléments du tableau dans l'ordre inverse.

    Trier($noms); // trie dans l'ordre. C'est pratique s'il y a des chiffres dans l'index
    arsort($noms); // trier dans l'ordre inverse. Autrement dit, par indices, les éléments seront dans l'ordre 3, 2, 1, 0
    Désarmé- une fonction qui supprime un élément du tableau.

    Non défini($tableau); // suppression d'un élément de tableau avec l'index 2
    non défini($tableau); // suppression de tout le tableau
    Tableau_recherche- fonction de recherche dans un tableau. A deux arguments. En termes simples, il a array_search("quoi", où)

    $animaux="chien";
    $animaux="chat";
    $animaux="oiseau";
    echo array_search("chat",$animaux); // affichera l'index de l'élément - numéro 2
    Mélanger- une fonction qui mélange les clés des valeurs du tableau.

    Mélanger($animaux); // arrange les éléments dans un ordre aléatoire
    Merci pour votre attention!