Bevezetés a 2D tömbökbe a PHP-ben

Egy tömb bármilyen adattípus elemének gyűjteménye. A php-ben számos adattípus található, például karakterlánc, egész szám, logikai érték, tömb, objektum, erőforrás stb. A 2D tömb ezen adattípusok keveréke, elsősorban a tömb. A PHP-ben háromféle típusú kétdimenziós tömb létezik:

  • Numeric Array
  • Asszociatív tömb
  • Többdimenziós tömb

Ezt a három tömböt az alábbiakban ismertetjük:

1. Numerikus tömb: A tömb numerikus mutatóval.

Szintaxis :

array(value1, value2, value3, …);

Példa :

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

2. Az asszociatív tömb : tömb karakterlánccal vagy számindexel. Ennek a tömbnek az elemei kulcs-érték pár formájában vannak tárolva.

Szintaxis :

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

Példa :

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

3. Többdimenziós tömb : Egy tömb tömbje többdimenziós tömb vagy 2D tömb vagy beágyazott tömb. Ez a formátum mindig tömb vagy tömb. És így beágyazott tömbnek hívják.

Szintaxis:

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

)

E xample:

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

A fenti példában a bemeneti tömb egy 2-dimenziós tömb példája. Itt a fő tömb 2 elemet tartalmaz, ahol mindegyik elem maga is egy 3 elem tömbje.

Hogyan határozhatjuk meg a 2D-tömböket?

Megtudtuk, hogy a 2D tömbben az érték elem egy tömb, amelynek további al-tömbjei is lehetnek. A tömbben említett méretek sorok és oszlopok formájában vannak. A tömb táblázatos formátumát szem előtt tartva könnyebb megtanulni ezen tömbök meghatározását. Ez azt jelenti, hogy ha ez egy kétdimenziós tömb, akkor két indexet fog használni, hasonlóan, ha ez egy háromdimenziós tömb, akkor három indexet fog használni, és így tovább.

Hogyan hozhatunk létre 2D-tömböket?

Mivel tudjuk, hogyan kell meghatározni a 2D tömböt, létrehozhatjuk azt most. Itt az index nincs meghatározva, és alapértelmezés szerint egy olyan szám, amely mindig 0-val kezdődik.

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

A tömb az asszociatív tömb formájában is meghatározható.

(in key =>value form)

Az index vagy a kulcs egy karakterlánc, például színek, gyümölcsök és autók. Az érték elemek tömb formájában vannak, amelyek egyenként 3 elemet tartalmaznak.

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

Hogyan lehet elérni a 2D tömb elemeit?

E tömbértékek eléréséhez használhat szögletes zárójeleket. Ahogy elmész a 2D tömb több szintjén, a szögletes zárójelek halmaza minden szinttel növekszik.

1. példa

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

Ne feledje, hogy az első szögletes zárójelek tartalmazzák a kulcsot, amely ebben az esetben a színek, gyümölcsök, autók. Ezt követi egy további szögletes zárójel sorozat a következő szint lefelé haladásához, és olyan számokkal érhető el, mint a 0, 1, 2.

Tehát ha a fenti tömbben a „Szőlő” elemhez akarunk hozzáférni,

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

Hasonlóan a következő példákhoz

Ha akkor akarjuk elérni a tömbben a „Mercedes” elemet

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

Ha akkor akarjuk elérni a tömbben a „Red” elemet

echo $input('colors)(0);

Mivel az index tömbben mindig 0-val kezdődik.

2. példa

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

Ha a fenti tömbben az „Narancssárga” elemhez akarunk hozzáférni, akkor a következő sort fogjuk használni

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

Hogyan beilleszthetjük a 2D tömb elemeit a PHP-be?

Mivel tudjuk, hogyan kell definiálni, létrehozni és hozzáférni a tömb elemeket, megtanuljuk az elemek beszúrását a tömbbe. Vannak olyan tömbfunkciók, amelyek a PHP-ben definiáltak többdimenziós tömbökön történő működésre, például az array_push () függvény beillesztésre, array_shift () függvény eltávolításra és így tovább.

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

A print_r () függvény használatával először a tömböt nyomtatjuk ki, ahogy van.

Kód:

//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 ($ input);
visszhang "

Kimenet:

Most adjunk hozzá elemet a gyümölcsök altömbjéhez, amelyet használunk

array_push() function

Szintaxis:

array_push(array, value1, value2…)

Hol,

  • A tömb a $ bemeneti tömb
  • Az 1. érték a tömbbe felveendő elem
  • a 2. érték, a 3. érték opcionális

1. példa

Kód:

$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 ($ input);
visszhang "

Kimenet:

Az alábbi programban csak eltávolítottuk a „színek” kulcsot, és megállapítottuk, hogy a kimeneti képen látható 0-os billentyűvel az adott tömb utolsó részéhez tartozik.

2. példa

Kód:

// 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 ($ input);
visszhang "

Kimenet:

3. példa

Kód:

//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 ($ input);
visszhang "

Kimenet:

Hogyan frissíthetem a 2D tömb elemeit a PHP-ben?

A 2D tömb egyik elemének frissítéséhez csak vegye ki a kulcsot a tömbből, és cserélje le annak kulcsát egy adott tömbben.

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

1. példa

Kód:

//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 ($ input);
visszhang "

Kimenet:

2. példa

Kód:

//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 ($ input);
visszhang "

Kimenet:

Hogyan lehet törölni a 2D tömb elemeit?

A 2D tömb egy elemének törléséhez array_shift () függvényt használunk.

array_shift eltávolítja és visszaadja a tömb első elem értékét.

Szintaxis:

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

1. példa

Kód:

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

Kimenet:

2. példa

Kód:

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

Kimenet:

Kétdimenziós az asszociatív tömbben

A következő példában kétdimenziós tömböt hoztunk létre, amely tartalmazza az olyan könyvek információit, mint a könyv szerzője, a könyv típusa és az év során megjelent. Azt is megtanuljuk, hogyan lehet átmenni vagy áthúzni ezen a tömbön. A többdimenziós tömbön áthaladva egy beágyazott foreach hurkot fogunk használni. Az egyik foreach hurok a másik foreach hurkon belül. Ugyanez megtehető a hurok használatával is.

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

A fenti tömbnek hurok nélküli kinyomtatása a következő eredményt adja:

Kód:

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

Kimenet:

Most kinyomtatjuk a többdimenziós tömböt egy foreach hurok segítségével.

Kód:

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

Kimenet:

Következtetés

Remélem, hogy ez a cikk hasznos a téma fogalmainak megismerésében egy 2D tömbön a PHP-ben. Ez a témakör a PHP 2D tömbjének megértéséhez szükséges összes fogalmat lefedi. Ez a téma egyszerűbbé válik a példák segítségével, amelyekre a kimeneti pillanatképek hivatkoznak. A cikk szerint, ha minden programot jól gyakorolnak, akkor biztosan segít a fogalmak könnyű megértésében. Remélem, hogy a téma informatívabbá válik a további ismeretek megszerzése érdekében.

Ajánlott cikkek

Ez egy útmutató a 2D tömbökhöz a PHP-ben. Itt a tömb három különféle típusát tárgyaljuk php-ben és a 2D-tömb elemeinek frissítése, beillesztése és törlése módjáról, a megfelelő példákkal. A következő cikket is megnézheti.

  1. A Loop számára a PHP-ben
  2. Csere a PHP-ben
  3. Csillagminták a PHP-ben
  4. PHP állandók
  5. Útmutató a különféle C # adattípusokhoz

Kategória: