Maison > développement back-end > tutoriel php > Tableaux 2D en PHP

Tableaux 2D en PHP

WBOY
Libérer: 2024-08-29 12:43:14
original
811 Les gens l'ont consulté

Un tableau est une collection d'éléments de n'importe quel type de données. Il existe de nombreux types de données en PHP comme une chaîne, un entier, un booléen, un tableau, un objet, une ressource… etc. Un tableau 2D est un mélange de ces types de données, principalement le tableau. Il existe trois types différents de tableaux 2D en PHP qui sont les suivants :

PUBLICITÉ Cours populaire dans cette catégorie DEVELOPPEUR PHP - Spécialisation | Série de 8 cours | 3 tests simulés

Commencez votre cours de développement de logiciels libres

Développement Web, langages de programmation, tests de logiciels et autres

  • Tableau numérique
  • Tableau associatif
  • Tableau multidimensionnel

Types de tableaux 2D en PHP

Ces trois tableaux sont expliqués ci-dessous :

1. Le tableau numérique

Le tableau avec un index numérique.

Syntaxe :

array(value1, value2, value3, …);
Copier après la connexion

Exemple :

$input = array(10,20,30,40,50);
Copier après la connexion

2. Le tableau associatif

Le tableau avec un index de chaîne ou de nombre. Les éléments de ce tableau sont stockés sous la forme d'une paire clé-valeur.

Syntaxe :

array('key1' => 'value1', 'key2' => 'value2', 'key3' => 'value3',…);
Copier après la connexion

Exemple :

$input =  array(0 =>Emma, 1=>Alice, 2=>'John');
Copier après la connexion

3. Le tableau multidimensionnel

Le tableau de tableau est un tableau multidimensionnel ou un tableau 2D ou un tableau imbriqué. Ce format est toujours un tableau ou un tableau. Et ainsi appelé un tableau imbriqué.

Syntaxe :

array (
array (elements...),
array (elements...),
...
)
Copier après la connexion

Exemple :

$input = array(
array( "red", "green", "blue" ),
array( "yellow", "black", "white" )
);
Copier après la connexion

Dans l'exemple ci-dessus, le tableau d'entrée est un exemple de tableau à 2 dimensions. Ici, le tableau principal contient 2 éléments où chaque élément est lui-même un tableau de 3 éléments.

Comment définir des tableaux 2D ?

Nous avons appris que dans le tableau 2D, l'élément value est un tableau qui peut en outre avoir des sous-tableaux. Les dimensions mentionnées dans un tableau se présentent sous forme de lignes et de colonnes. En gardant à l’esprit le format tabulaire du tableau, il est plus facile d’apprendre à définir ces tableaux. Cela signifie que s'il s'agit d'un tableau à deux dimensions, deux indices seront utilisés, de même, s'il s'agit d'un tableau à trois dimensions, trois indices seront utilisés, et ainsi de suite.

Comment créer des tableaux 2D ?

Puisque nous savons comment définir un tableau 2D, nous pouvons le créer maintenant. Ici l'index n'est pas défini et par défaut est un nombre qui commence toujours par 0.

$input=array(
array( "red", "green", "blue" ),
array( "yellow", "black", "white" )
);
Copier après la connexion

Le tableau peut également être défini sous la forme du tableau associatif.

(in key =>value form)
Copier après la connexion

L'index ou la clé est une chaîne comme les couleurs, les fruits et les voitures. Les éléments de valeur se présentent sous la forme d'un tableau contenant 3 éléments chacun.

$input = array(
'colors'=>array ("Red", "Green", "Blue"),
'fruits'=>array ("Apple", "Orange", "Grapes"),
'cars'=>array ("BMW", "Skoda", "Mercedes")
);
Copier après la connexion

Comment accéder aux éléments des tableaux 2D ?

Pour accéder à ces valeurs de tableau, vous pouvez utiliser des crochets. Au fur et à mesure que vous approfondissez davantage de niveaux du tableau 2D, l'utilisation du jeu de crochets augmentera à chaque niveau.

Exemple n°1

Code :

$input = array (
'colors' =>array ("Red", "Green", "Blue"),
'fruits' =>array ("Apple", "Orange", "Grapes"),
'cars' =>array ("Skoda", "BMW", "Mercedes")
);
Copier après la connexion

N'oubliez pas que le premier jeu de crochets contient la clé qui dans ce cas sont les couleurs, les fruits, les voitures. Suivi d'un autre jeu de crochets pour passer au niveau suivant et accessible avec des nombres comme 0,1,2.

Donc, si nous voulons accéder à l'élément « Raisins » dans le tableau ci-dessus,

echo $input['fruits'][2];
Copier après la connexion

De même les exemples suivants

Si nous voulons accéder à l'élément « Mercedes » dans le tableau alors

echo $input['cars'][2];
Copier après la connexion

Si nous voulons accéder à l'élément « Rouge » dans le tableau alors

echo $input['colors'][0];
Copier après la connexion

Comme l'index commence toujours par 0 dans un tableau.

Exemple n°2

Code :

$input = array (
array ("Red", "Green", "Blue"),
array ("Yellow", "Orange", "Purple"),
);
Copier après la connexion

Si nous voulons accéder à l'élément « Orange » dans le tableau ci-dessus, nous utiliserons la ligne suivante

echo $input[0][1];
Copier après la connexion

donnera « Vert »

echo $input[1][2];
Copier après la connexion

donnera « Violet »

echo $input[0][0];
Copier après la connexion

donnera « Rouge »

Comment insérer des éléments de tableaux 2D en PHP ?

Puisque nous savons comment définir, créer et accéder aux éléments d'un tableau, nous allons maintenant apprendre à insérer des éléments dans le tableau. Il existe des fonctions de tableau définies en PHP pour fonctionner sur des tableaux multidimensionnels comme la fonction array_push() à insérer, la fonction array_shift() à supprimer, etc.

$input = array (
'colors'=>array ("Red", "Green", "Blue"),
'fruits'=>array ("Apple", "Orange", "Grapes"),
'cars'=>array ("Skoda", "BMW", "Mercedes")
);
Copier après la connexion

En utilisant la fonction print_r(), nous imprimerons d'abord le tableau tel quel.

Code :

//create multidimensional array
$input = array (
"colors"=>array ("Red", "Green", "Blue"),
"fruits"=>array ("Apple", "Orange", "Grapes"),
"cars"=>array ("Skoda", "BMW", "Mercedes")
);
// print the multidimensional array
echo "<pre class="brush:php;toolbar:false">";
print_r($input);
echo "<pre class="brush:php;toolbar:false">";
Copier après la connexion

Sortie :

Tableaux 2D en PHP

Maintenant, pour ajouter un élément au sous-tableau de fruits, nous allons utiliser

array_push() function
Copier après la connexion

Syntaxe :

array_push(array, value1,value2...)
Copier après la connexion

Où,

  • Le tableau est le tableau $input
  • value1 est l'élément à ajouter au tableau
  • value2, value3, sont facultatifs

Exemple n°1

Code :

$input = array (
"colors"=>array ("Red", "Green", "Blue"),
"fruits"=>array ("Apple", "Orange", "Grapes"),
"cars"=>array ("Skoda", "BMW", "Mercedes")
);
array_push($input['colors'], "Black");
echo "<pre class="brush:php;toolbar:false">";
print_r($input);
echo "<pre class="brush:php;toolbar:false">";
Copier après la connexion

Sortie :

Tableaux 2D en PHP

Dans le programme ci-dessous, nous supprimons simplement la clé « couleurs » et constatons qu'elle s'ajoute au dernier du tableau donné avec une clé 0, comme indiqué dans l'image de sortie.

Example #2

Code:

// create multidimensional array
$input = array (
"colors"=>array ("Red", "Green", "Blue"),
"fruits"=>array ("Apple", "Orange", "Grapes"),
"cars"=>array ("Skoda", "BMW", "Mercedes")
);
// adding a value to array
array_push($input, "Black");
// print the multidimensional array
echo "<pre class="brush:php;toolbar:false">";
print_r($input);
echo "<pre class="brush:php;toolbar:false">";
Copier après la connexion

Output:

Tableaux 2D en PHP

Example #3

Code:

//create multidimensional array
$input = array (
array ("Red", "Green", "Blue"),
array ("Yellow", "Orange", "Purple")
);
//add a color to the array
array_push($input, "Black");
// print the multidimensional array
echo "<pre class="brush:php;toolbar:false">";
print_r($input);
echo "<pre class="brush:php;toolbar:false">";
Copier après la connexion

Output:

Tableaux 2D en PHP

How to Update Elements of 2D Arrays in PHP?

To update an element of the 2D array just get the key from the array and replace the value of that key in a particular array.

$input['cars']['Mercedes']  = 'Duster';
Copier après la connexion

Example #1

Code:

//create multidimensional array
$input = array (
"colors"=>array ("Red", "Green", "Blue"),
"fruits"=>array ("Apple", "Orange", "Grapes"),
"cars"=>array ("Skoda", "BMW", "Mercedes")
);
//update the Mercedes with Duster
$input["cars"][2]  = "Duster";
// print the multidimensional array
echo "<pre class="brush:php;toolbar:false">";
print_r($input);
echo "<pre class="brush:php;toolbar:false">";
Copier après la connexion

Output:

Tableaux 2D en PHP

Example #2

Code:

//create multidimensional array
$input = array (
array ("Red", "Green", "Blue"),
array ("Yellow", "Orange", "Purple")
);
//update the Mercedes with Duster
$input[0][1] = "White";
// print the multidimensional array
echo "<pre class="brush:php;toolbar:false">";
print_r($input);
echo "<pre class="brush:php;toolbar:false">";
Copier après la connexion

Output:

Tableaux 2D en PHP

How to Delete Elements of 2D Arrays?

To delete an element of the 2D array we will use array_shift() function.

array_shift removes and returns the first element value of the array.

Syntax:

array_shift(array)
Copier après la connexion

where

-array is the $input array

Example #1

Code:

//create multidimensional array
$input = array (
"colors"=>array ("Red", "Green", "Blue"),
"fruits"=>array ("Apple", "Orange", "Grapes"),
"cars"=>array ("Skoda", "BMW", "Mercedes")
);
//print the removed element
print_r(array_shift($input));
Copier après la connexion

Output:

Tableaux 2D en PHP

Example #2

Code:

//create multidimensional array
$input = array (
array ("Red", "Green", "Blue"),
array ("Yellow", "Orange", "Purple")
);
//print the removed element
print_r(array_shift($input));
Copier après la connexion

Output:

Tableaux 2D en PHP

Two dimensional in Associative Array

In the following example, we have created a 2-d array containing the information of books like the author of the book, type of book, and published in the year. Also, we will learn how to traverse or loop through this array. Looping through the multidimensional array we will use a nested foreach loop. Meaning one foreach loop inside another foreach loop. The same can also be done using for loop.

$input = array(
"The_Alchemist" => array (
"author" => "Paulo Coelho",
"type" => "Fiction",
"published_year" => 1988
),
"Managing_Oneself" => array (
"author" => "Peter Drucker",
"type" => "Non-fiction",
"published_year" => 1999
),
"Measuring_the_World" => array(
"author" => "Daniel Kehlmann",
"type" => "Fiction",
"published_year" => 2005
)
);
Copier après la connexion

Just printing the above array without any loop will give us the following output:

Code:

// create multidimensional array
$input = array(
"The_Alchemist" => array (
"author" => "Paulo Coelho",
"type" => "Fiction",
"published_year" => 1988
),
"Managing_Oneself" => array (
"author" => "Peter Drucker",
"type" => "Non-fiction",
"published_year" => 1999
),
"Measuring_the_World" => array(
"author" => "Daniel Kehlmann",
"type" => "Fiction",
"published_year" => 2005
)
);
// print the plain multidimensional array
echo "
";
print_r($input);
echo "
";
Copier après la connexion

Output:

Tableaux 2D en PHP

Now we will print the multidimensional array using a foreach loop.

Code:

// create multidimensional array
$input = array(
"The_Alchemist" => array (
"author" => "Paulo Coelho",
"type" => "Fiction",
"published_year" => 1988
),
"Managing_Oneself" => array (
"author" => "Peter Drucker",
"type" => "Non-fiction",
"published_year" => 1999
),
"Measuring_the_World" => array(
"author" => "Daniel Kehlmann",
"type" => "Fiction",
"published_year" => 2005
)
);
//foreach to loop the outer array
foreach($input as $book) {
echo "
"; // foreach to loop the inner array foreach($book as $key=>$value) { echo $key." ". $value. "
"; } }
Copier après la connexion

Output:

Tableaux 2D en PHP

Conclusion

I hope this article is helpful to learn the concepts of the topic on a 2D array in PHP. This topic covers all the concepts required for the understanding related to the 2D array in PHP. This topic is made simpler with the help of examples with the output snapshots to refer to. According to the article, if all the programs are practiced well will surely help you to grasp the concepts easily. I hope the topic is made more informative for gaining more knowledge.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
php
source:php
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal