Úvod do 2D polí v PHP

Pole je súbor prvkov ľubovoľného typu údajov. Existuje mnoho typov údajov v php, ako sú reťazce, celé čísla, boolean, pole, objekt, zdroj atď. 2D pole je kombináciou týchto typov údajov, najmä súboru. V PHP existujú tri rôzne typy 2D polí, ktoré sú nasledujúce:

  • Numeric Array
  • Asociatívne pole
  • Viacrozmerné pole

Tieto tri polia sú vysvetlené nižšie:

1. Numerické pole: Pole s číselným indexom.

Syntax :

array(value1, value2, value3, …);

Príklad :

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

2. Asociatívne pole : Pole s reťazcom alebo indexom čísel. Prvky tohto poľa sú uložené vo forme páru kľúč - hodnota.

Syntax :

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

Príklad :

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

3. Multidimenzionálne pole : Pole poľa je viacrozmerné pole alebo 2D pole alebo vnorené pole. Tento formát je vždy pole alebo pole. A tak sa nazýva vnorené pole.

syntaxe:

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

)

Príklad:

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

Vo vyššie uvedenom príklade je vstupné pole príkladom dvojrozmerného poľa. Hlavné pole tu obsahuje 2 prvky, pričom každý prvok je sám o sebe ďalším súborom 3 prvkov.

Ako definovať 2D polia?

Dozvedeli sme sa, že v 2D poli je hodnotovým prvkom pole, ktoré môže mať ďalšie polia. Rozmery uvedené v poli sú vo forme riadkov a stĺpcov. Vzhľadom na tabuľkový formát poľa je ľahšie naučiť sa, ako tieto polia definovať. Znamená to, že ak ide o dvojrozmerné pole, použijú sa dva indexy, podobne, ak sa jedná o trojrozmerné pole, použijú sa tri indexy atď.

Ako vytvoriť 2D polia?

Pretože vieme, ako definovať 2D pole, môžeme ho teraz vytvoriť. Index tu nie je definovaný a predvolene je to číslo, ktoré vždy začína na 0.

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

Pole môže byť tiež definované vo forme asociatívneho poľa.

(in key =>value form)

Index alebo kľúč je reťazec, ako sú farby, ovocie a autá. Hodnotové prvky sú vo forme poľa obsahujúceho vždy 3 prvky.

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

Ako získať prístup k prvkom 2D polí?

Ak chcete získať prístup k týmto hodnotám polí, môžete použiť hranaté zátvorky. Keď sa hlbšie nachádzate vo viacerých úrovniach 2D poľa, použitie sady hranatých zátvoriek sa s každou úrovňou zvýši.

Príklad č. 1

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

Pamätajte, že prvá sada hranatých zátvoriek obsahuje kľúč, ktorým sú v tomto prípade farby, ovocie, autá. Nasleduje jedna ďalšia sada hranatých zátvoriek, aby sa prešla o ďalšiu úroveň a sú prístupné pomocou čísel, ako je 0, 1, 2.

Ak teda chceme získať prístup k prvku „Hrozno“ vo vyššie uvedenom poli,

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

Podobne nasledujúce príklady

Ak chceme získať prístup k prvku „Mercedes“ v poli, potom

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

Ak chceme získať prístup k prvku „Červený“ v poli, potom

echo $input('colors)(0);

Pretože index vždy začína 0 v poli.

Príklad č. 2

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

Ak chceme vo vyššie uvedenom poli získať prístup k prvku „Orange“, použijeme nasledujúci riadok

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

Ako vložiť prvky 2D polí do PHP?

Pretože vieme, ako definovať, vytvárať a pristupovať k prvkom poľa, naučíme sa teraz, ako vkladať prvky do poľa. V PHP sú definované funkcie polí, ktoré fungujú na viacrozmerných poliach, ako napríklad funkcia array_push (), ktorá sa má vložiť, funkcia array_shift (), ktorá sa má odstrániť, atď.

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

Pomocou funkcie print_r () najskôr vytlačíme pole tak, ako je.

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);
ozvena “
 ";

Výkon:

Teraz pridáme prvok do podskupiny ovocia, ktorý použijeme

array_push() function

syntaxe:

array_push(array, value1, value2…)

Kde,

  • Pole je vstupné pole $
  • value1 je prvok, ktorý sa má pridať do poľa
  • value2, value3, sú voliteľné

Príklad č. 1

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);
ozvena “
 ";

Výkon:

V nižšie uvedenom programe sme len odstránili kľúč „farby“ a zistili sme, že pripojí k poslednému z daného poľa pomocou klávesu 0, ako je to zobrazené na výstupnom obrázku.

Príklad č. 2

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);
ozvena “
 ";

Výkon:

Príklad č. 3

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);
ozvena “
 ";

Výkon:

Ako aktualizovať prvky 2D polí v PHP?

Ak chcete aktualizovať prvok 2D poľa, jednoducho získajte kľúč z poľa a nahraďte hodnotu tohto kľúča v konkrétnom poli.

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

Príklad č. 1

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);
ozvena “
 ";

Výkon:

Príklad č. 2

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);
ozvena “
 ";

Výkon:

Ako odstrániť prvky 2D polí?

Na odstránenie prvku 2D poľa použijeme funkciu array_shift ().

array_shift odstráni a vráti prvú hodnotu prvku poľa.

syntaxe:

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

Príklad č. 1

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

Výkon:

Príklad č. 2

kód:

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

Výkon:

Dvojrozmerné v asociatívnom poli

V nasledujúcom príklade sme vytvorili dvojrozmerné pole, ktoré obsahuje informácie o knihách ako autor knihy, typ knihy a publikované v roku. Dozvieme sa tiež, ako prechádzať alebo prechádzať cez toto pole. Pri opakovaní cez multidimenzionálne pole použijeme vnorenú slučku foreach. Význam jednej slučky foreach vo vnútri druhej slučky foreach. To isté sa dá urobiť aj pomocou slučky.

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

Iba tlač vyššie uvedeného poľa bez akejkoľvek slučky nám poskytne nasledujúci výstup:

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);
ozvena “
";

Výkon:

Teraz budeme tlačiť viacrozmerné pole pomocou slučky foreach.

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

Výkon:

záver

Dúfam, že tento článok je užitočný na naučenie sa pojmov témy na 2D poli v PHP. Táto téma pokrýva všetky koncepty potrebné na porozumenie týkajúce sa 2D poľa v PHP. Táto téma je zjednodušená pomocou príkladov s výstupnými snímkami, na ktoré sa možno odvolávať. Podľa článku, ak sa všetky programy praktizujú dobre, určite vám pomôžu pochopiť tieto pojmy ľahko. Dúfam, že táto téma je informačnejšia, aby získala viac vedomostí.

Odporúčané články

Toto je sprievodca 2D poliami v PHP. Tu diskutujeme o troch rôznych typoch polí v php a o tom, ako aktualizovať, vkladať a mazať prvky 2D polí s príslušnými príkladmi. Môžete sa tiež pozrieť na nasledujúci článok.

  1. Pre slučku v PHP
  2. Výmena v PHP
  3. Hviezdne vzory v PHP
  4. PHP konštanty
  5. Sprievodca rôznymi typmi údajov C #

Kategórie: