PHP tömb: asszociatív, többdimenziós
⚡ Okos összefoglaló
A PHP tömbök számos kapcsolódó értéket tárolnak egyetlen változóban, így a kapcsolódó adatok könnyen csoportosíthatók és feldolgozhatók. Ez az útmutató bemutatja a numerikus, asszociatív és többdimenziós tömböket, a tömb-összehasonlító operátorokat, valamint az olyan alapvető függvényeket, mint a count, sort, ksort és asort.

Mi az a PHP tömb?
A PHP tömb egy olyan változó, amely egynél több kapcsolódó adatot tárol egyetlen változóban.
Képzeljen el egy tömböt, mint egy doboz csokoládét, benne résekkel.
A doboz magát a tömböt jelöli, míg a csokoládékat tartalmazó mezők a tömbben tárolt értékeket jelölik.
Az alábbi példák bemutatják, hogyan működik ez.
Numerikus tömbök
A numerikus tömbök számokat használnak hozzáférési kulcsként.
A hozzáférési kulcs egy tömbváltozóban lévő memóriahelyre való hivatkozás.
Az elérési kulcsot akkor használjuk, amikor egy tömb elemét olvasni vagy új értéket rendelni szeretnénk hozzá.
Az alábbiakban egy numerikus tömb létrehozásának szintaxisát láthatjuk PHP-ben.
Tömb példa
<?php $variable_name[n] = value; ?>
Or
<?php
$variable_name = array(n => value, ...);
?>
ITT,
- A „$változó_neve…” a változó neve
- Az „[n]” az elem hozzáférési indexszáma
- Az „érték” a tömbelemhez rendelt érték.
Most nézzünk egy példát egy numerikus tömbre.
Tegyük fel, hogy van 5 filmünk, amelyeket tömbváltozókban szeretnénk tárolni.
Ehhez használhatjuk az alábbi példát.
<?php $movie[0] = 'Shaolin Monk'; $movie[1] = 'Drunken Master'; $movie[2] = 'American Ninja'; $movie[3] = 'Once upon a time in China'; $movie[4] = 'Replacement Killers'; ?>
Itt,
Minden filmhez tartozik egy indexszám, amely az értékének lekérésére vagy módosítására szolgál. Figyeljük meg a következő kódot.
<?php $movie[0]="Shaolin Monk"; $movie[1]="Drunken Master"; $movie[2]="American Ninja"; $movie[3]="Once upon a time in China"; $movie[4]="Replacement Killers"; echo $movie[3]; $movie[3] = " Eastern Condors"; echo $movie[3]; ?>
output:
Once upon a time in China Eastern Condors
Amint a fenti példákból látható, a PHP tömbökkel való munkavégzése, ha több azonos természetű értékkel foglalkozik, nagyon egyszerű és rugalmas.
Alternatív megoldásként a fenti tömbváltozók a következő kóddal is létrehozhatók.
<?php $movie = array(0 => "Shaolin Monk", 1 => "Drunken Master", 2 => "American Ninja", 3 => "Once upon a time in China", 4 => "Replacement Killers" ); echo $movie[4]; ?>
output:
Replacement Killers
PHP asszociatív tömb
Az asszociatív tömbök abban különböznek a numerikus tömböktől, hogy az asszociatív tömbök leíró neveket használnak az azonosítókulcsokhoz.
Az alábbiakban egy asszociatív tömb létrehozásának szintaxisát láthatjuk PHP-ben.
<?php $variable_name['key_name'] = value; $variable_name = array('keyname' => value); ?>
ITT,
- A „$változó_neve…” a változó neve
- A „['key_name']” az elem hozzáférési kulcsa.
- Az „érték” a tömbelemhez rendelt érték.
Tegyük fel, hogy van egy csoportunk, és minden egyes személy nevéhez hozzá szeretnénk rendelni a nemét.
Használhatunk ehhez asszociatív tömböt. Az alábbi kód segít ebben.
<?php $persons = array("Mary" => "Female", "John" => "Male", "Mirriam" => "Female"); print_r($persons); echo ""; echo "Mary is a " . $persons["Mary"]; ?>
ITT,
output:
Array ( [Mary] => Female [John] => Male [Mirriam] => Female ) Mary is a Female
Az asszociatív tömbök nagyon hasznosak az adatbázisból történő adatkikeresés során is.
A mezőnevek azonosító kulcsként használatosak.
PHP Többdimenziós tömbök
Ezek olyan tömbök, amelyek más beágyazott tömböket tartalmaznak.
A többdimenziós tömbök előnye, hogy lehetővé teszik a kapcsolódó adatok csoportosítását.
Most nézzünk egy gyakorlati példát, amely egy PHP többdimenziós tömböt valósít meg.
Az alábbi táblázat a filmek listáját mutatja kategóriák szerint.
| Film cím | Kategória |
|---|---|
| Rózsaszín párduc | Vígjáték |
| John angol | Vígjáték |
| Die Hard | Akció |
| Expendables | Akció |
| A gyűrűk ura | Epikus |
| Rómeó és Júlia | Románc |
| Ne láss rosszat, ne hallj gonoszt | Vígjáték |
A fenti információk többdimenziós tömbként ábrázolhatók. Az alábbi kód a megvalósítást mutatja.
<?php $movies = array( "comedy" => array("Pink Panther", "John English", "See no evil hear no evil"), "action" => array("Die Hard", "Expendables"), "epic" => array("The Lord of the rings"), "Romance" => array("Romeo and Juliet") ); print_r($movies); ?>
ITT,
output:
Array ( [comedy] => Array ( [0] => Pink Panther [1] => John English [2] => See no evil hear no evil ) [action] => Array ( [0] => Die Hard [1] => Expendables ) [epic] => Array ( [0] => The Lord of the rings ) [Romance] => Array ( [0] => Romeo and Juliet ) )
Ugyanennek a tömbnek a definiálásának egy másik módja a következő.
<?php $film = array( "comedy" => array( 0 => "Pink Panther", 1 => "John English", 2 => "See no evil hear no evil" ), "action" => array ( 0 => "Die Hard", 1 => "Expendables" ), "epic" => array ( 0 => "The Lord of the rings" ), "Romance" => array ( 0 => "Romeo and Juliet" ) ); echo $film["comedy"][0]; ?>
output:
Pink Panther
Megjegyzés: a filmek numerikus tömböt a kategóriák asszociatív tömbjébe ágyaztuk.
PHP tömbök: Operatorzok
| Operator | Név | Leírás | Hogyan kell csinálni | teljesítmény |
|---|---|---|---|---|
| x+y | Unió | Mindkét tömb elemeit egyesíti |
<?php $x = array('id' => 1); $y = array('value' => 10); $z = $x + $y; ?> |
Tömb([id] => 1 [érték] => 10) |
| x == y | Egyenlő | Két tömböt hasonlít össze, és igaz értéket ad vissza, ha egyenlőek. |
<?php $x = array("id" => 1); $y = array("id" => "1"); if($x == $y) { echo "true"; } else { echo "false"; } ?> |
Igaz vagy 1 |
| x === y | Azonos | Összehasonlítja mind az értékeket, mind a adattípusok |
<?php $x = array("id" => 1); $y = array("id" => "1"); if($x === $y) { echo "true"; } else { echo "false"; } ?> |
Hamis vagy 0 |
| x != y, x <> y | Nem egyenlő | Igaz értéket ad vissza, ha a két tömb nem egyenlő. |
<?php $x = array("id" => 1); $y = array("id" => "1"); if($x != $y) { echo "true"; } else { echo "false"; } ?> |
Hamis vagy 0 |
| x !== y | Nem azonos | Igaz értéket ad vissza, ha a két tömb értéke vagy típusa nem azonos. |
<?php $x = array("id" => 1); $y = array("id" => "1"); if($x !== $y) { echo "true"; } else { echo "false"; } ?> |
Igaz vagy 1 |
PHP tömbfüggvények
Számoló funkció
A count függvény egy PHP tömb elemeinek számlálására szolgál. Az alábbi kód a megvalósítását mutatja.
<?php $lecturers = array("Mr. Jones", "Mr. Banda", "Mrs. Smith"); echo count($lecturers); ?>
output:
3
is_array függvény
Az is_array függvény segítségével határozhatjuk meg, hogy egy változó tömb-e vagy sem. Most nézzünk meg egy példát, amely megvalósítja az is_array függvényt.
<?php $lecturers = array("Mr. Jones", "Mr. Banda", "Mrs. Smith"); echo is_array($lecturers); ?>
output:
1
Fajta
Ez a függvény tömbök rendezésére szolgál az értékeik alapján.
Ha az értékek alfanumerikusak, akkor ábécé sorrendbe rendezi őket.
Ha az értékek numerikusak, akkor növekvő sorrendbe rendezi őket.
Eltávolítja a meglévő hozzáférési kulcsokat, és új numerikus kulcsokat ad hozzá.
A függvény kimenete egy numerikus tömb.
<?php $persons = array("Mary" => "Female", "John" => "Male", "Mirriam" => "Female"); sort($persons); print_r($persons); ?>
output:
Array ( [0] => Female [1] => Female [2] => Male )
ksort
Ez a funkció a tömb rendezésére szolgál a billentyű segítségével. Az alábbi példa illusztrálja a használatát.
<?php $persons = array("Mary" => "Female", "John" => "Male", "Mirriam" => "Female"); ksort($persons); print_r($persons); ?>
output:
Array ( [John] => Male [Mary] => Female [Mirriam] => Female )
választék
Ez a funkció a tömb rendezésére szolgál az értékek alapján, miközben a keeping a billentyűket. A következő példa szemlélteti a használatát.
<?php $persons = array("Mary" => "Female", "John" => "Male", "Mirriam" => "Female"); asort($persons); print_r($persons); ?>
output:
Array ( [Mary] => Female [Mirriam] => Female [John] => Male )
Miért használjunk tömböket?
- A tömbök tartalma nyújtható, hogy több értéket tartalmazzon.
- A tömbök segítségével könnyedén csoportosíthatók a kapcsolódó információk, például a szerver bejelentkezési adatai.
- A tömbök segítenek tisztább kód írásában.



