Introduktion till 2D Arrays i PHP

En matris är en samling av element av vilken datatyp som helst. Det finns många datatyper i php som sträng, heltal, boolean, matris, objekt, resurs … etc. En 2D-array är en blandning av dessa datatyper huvudsakligen arrayen. Det finns tre olika typer av 2D-arrayer i PHP som är följande:

  • Numerisk matris
  • Associative Array
  • Multidimensionell matris

Dessa tre matriser förklaras nedan:

1. Den numeriska arrayen: Matrisen med ett numeriskt index.

Syntax :

array(value1, value2, value3, …);

Exempel :

$input = array(10, 20, 30, 40, 50);

2. Associative Array : Arrayen med sträng- eller nummerindex. Elementen i denna matris lagras i form av ett nyckelvärdespar.

Syntax :

array('key1' => 'value1', 'key2' => 'value2', 'key3' => 'value3', …);

Exempel :

$input = array(0 =>Emma, 1=>Alice, 2=>'John');

3. Den flerdimensionella arrayen : Arrayen för en matris är den multidimensionella arrayen eller en 2D-array eller en kapslad matris. Detta format är alltid ett array eller array. Och så kallade en kapslad matris.

Syntax:

array (
array (elements…),
array (elements…),

)

E- prov:

$input = array(
array( "red", "green", "blue" ),
array( "yellow", "black", "white" )
);

I exemplet ovan är ingångsuppsättningen ett exempel på en tvådimensionell matris. Här innehåller huvuduppsättningen 2 element där varje element i sig är ytterligare en matris med 3 element.

Hur definierar jag 2D-matriser?

Vi lärde oss att i 2D-matrisen är värdelementet en matris som vidare kan ha delmatriser. Dimensionerna som nämns i en matris är i form av rader och kolumner. Med tabellformat för arrayen i åtanke är det lättare att lära sig att definiera dessa arrayer. Vilket innebär att om det är en tvådimensionell matris, kommer två index att användas, på liknande sätt, om det är en tredimensionell matris, kommer tre index att användas och så vidare.

Hur man skapar 2D-matriser?

Eftersom vi vet hur man definierar en 2D-grupp kan vi skapa den nu. Här definieras inte indexet och är som standard ett nummer som alltid börjar med 0.

$input=array(
array( "red", "green", "blue" ),
array( "yellow", "black", "white" )
);

Matrisen kan också definieras i form av den associerande matrisen.

(in key =>value form)

Indexet eller nyckeln är en sträng som färger, frukt och bilar. Värdelementen är i form av en matris som innehåller 3 element vardera.

$input = array(
'colors'=>array (“Red", "Green", "Blue"),
'fruits'=>array ("Apple", "Orange", "Grapes"),
'cars'=>array (“BMW”, ”Skoda”, ”Mercedes”)
);

Hur får man tillgång till element i 2D-arrayer?

För att få tillgång till dessa matrisvärden kan du använda fyrkantiga parenteser. När du går djupt in i fler nivåer i 2D-arrayen kommer användningen av uppsättningen fyrkantiga parentes att öka med varje nivå.

Exempel 1

$input = array (
'colors' =>array (“Red", "Green", "Blue"),
'fruits' =>array ("Apple", "Orange", "Grapes"),
'cars' =>array ("Skoda", "BMW", "Mercedes")
);

Kom ihåg att den första uppsättningen fyrkantiga parenteser innehåller nyckeln som i detta fall är färger, frukt, bilar. Följt av ytterligare en uppsättning fyrkantiga parenteser för att gå igenom nästa nivå och kan nås med nummer som 0, 1, 2.

Så om vi vill få tillgång till elementet "Druvor" i ovanstående array,

echo $input('fruits')(2);

Likaså följande exempel

Om vi ​​vill komma åt elementet "Mercedes" i matrisen då

echo $input('cars')(2);

Om vi ​​vill komma åt elementet "Red" i matrisen då

echo $input('colors)(0);

Eftersom indexet alltid börjar med 0 i en matris.

Exempel 2

$input = array (
array (“Red", "Green", "Blue"),
array ("Yellow", "Orange", "Purple"),
);

Om vi ​​vill komma åt elementet “Orange” i ovanstående array använder vi följande rad

echo $input(0)(1);
will give “Green”
echo $input(1)(2);
will give “Purple”
echo $input(0)(0);
will give “Red”

Hur sätter man in element i 2D-arrayer i PHP?

Eftersom vi vet hur man definierar, skapar och åtkomst till arrayelement kommer vi att lära oss nu hur man sätter in element i arrayen. Det finns arrayfunktioner definierade i PHP för att arbeta med flerdimensionella arrayer som array_push () -funktionen att infoga, array_shift () -funktion att ta bort och så vidare.

$input = array (
'colors'=>array (“Red", "Green", "Blue"),
'fruits'=>array ("Apple", "Orange", "Grapes"),
'cars'=>array ("Skoda", "BMW", "Mercedes")
);

Med funktionen print_r () kommer vi att skriva ut matrisen först som den är.

Koda:

//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 "

 ";
print_r ($ ingång);
eko "
 ";

Produktion:

Nu för att lägga till ett element i fruktsubsatsen som vi kommer att använda

array_push() function

Syntax:

array_push(array, value1, value2…)

Var,

  • Arrayen är $ input-arrayen
  • value1 är elementet som ska läggas till i matrisen
  • värde2, värde3, är valfritt

Exempel 1

Koda:

$input = array (
"colors"=>array ("Red", "Green", "Blue"),
"fruits"=>array ("Apple", "Orange", "Grapes"),
"cars"=>array ("Skoda", "BMW", "Mercedes")
);
array_push($input('colors'), "Black");
echo "

 ";
print_r ($ ingång);
eko "
 ";

Produktion:

I nedanstående program tar vi bort nyckeln "färger" och fann att den lägger till den sista av den angivna matrisen med en 0-knapp som visas i utgångsbilden.

Exempel 2

Koda:

// 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 "

 ";
print_r ($ ingång);
eko "
 ";

Produktion:

Exempel 3

Koda:

//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 "

 ";
print_r ($ ingång);
eko "
 ";

Produktion:

Hur uppdaterar man delar av 2D-arrayer i PHP?

För att uppdatera ett element i 2D-arrayen får du bara nyckeln från matrisen och ersätter värdet på den nyckeln i en viss array.

$input('cars')('Mercedes') = 'Duster';

Exempel 1

Koda:

//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 "

 ";
print_r ($ ingång);
eko "
 ";

Produktion:

Exempel 2

Koda:

//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 "

 ";
print_r ($ ingång);
eko "
 ";

Produktion:

Hur tar jag bort element i 2D-matriser?

För att radera ett element i 2D-arrayen använder vi funktionen array_shift ().

array_shift tar bort och returnerar det första elementvärdet i arrayen.

Syntax:

array_shift(array)
where
-array is the $input array

Exempel 1

Koda:

//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));

Produktion:

Exempel 2

Koda:

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

Produktion:

Två-dimensionell i Associative Array

I följande exempel har vi skapat en 2-d-grupp som innehåller information om böcker som bokens författare, boktyp och publicerad under året. Vi kommer också att lära dig hur du går igenom denna grupp. Looping genom det flerdimensionella arrayet kommer vi att använda en kapslad foreach-loop. Vilket innebär en foreach-slinga i en annan foreach-loop. Detsamma kan också göras med hjälp av för 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
)
);

Bara att skriva ut ovanstående matris utan någon slinga ger oss följande utdata:

Koda:

// 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 ($ ingång);
eko "
";

Produktion:

Nu kommer vi att skriva ut det flerdimensionella arrayet med en förhandslinga.

Koda:

// 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. "
";
)
)

Produktion:

Slutsats

Jag hoppas att den här artikeln är till hjälp för att lära sig begreppen i ämnet på en 2D-grupp i PHP. Detta ämne täcker alla begrepp som krävs för att förstå den relaterade till 2D-arrayen i PHP. Detta ämne görs enklare med hjälp av exempel med de utgångsbilder som ska hänvisas till. Enligt artikeln kommer alla program praktiseras bra att du säkert kommer att hjälpa dig att förstå koncepten enkelt. Jag hoppas att ämnet blir mer informativt för att få mer kunskap.

Rekommenderade artiklar

Detta är en guide till 2D Arrays i PHP. Här diskuterar vi de tre olika typerna av arrayen i php och How to Update, Insert and Delete Elements of 2D Arrays med lämpliga exempel. Du kan också titta på följande artikel.

  1. För Loop i PHP
  2. Byta in PHP
  3. Stjärnamönster i PHP
  4. PHP-konstanter
  5. Guide till olika C # Datatyper

Kategori: