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.

  • 🧰 Mit csinálnak a tömbök: Egy tömb több kapcsolódó értéket tartalmaz egyetlen változóban, amelyekhez numerikus vagy névvel ellátott kulcsokkal lehet hozzáférni sok különálló változó helyett.
  • 🔢 Numerikus tömbök: A numerikus tömbök nullától kezdődő egész indexkulcsokat használnak az egyes tárolt elemek beolvasásához vagy hozzárendeléséhez.
  • 🏷️ Asszociatív tömbök: Az asszociatív tömbök leíró karakterlánc-kulcsokat használnak, ami ideális a nevek értékekkel vagy térképekkel való párosításához.ping adatbázis mezők.
  • 🧬 Többdimenziós: Egy többdimenziós tömb tömböket ágyaz be egy tömbbe, csoportosítping strukturált adatok, például kategóriák szerint rendezett filmek.
  • 🇧🇷 Sor Operators: Az union operátor tömböket egyesít, míg a == az értékek egyenlőségét, a == pedig a kulcsok sorrendjét és az adattípusokat is ellenőrzi.
  • 🔧 Tömbfüggvények: A count, is_array, sort, ksort és asort függvények érték vagy kulcs alapján jelentik és rendezik át a tömb tartalmát.
  • 🤖 AI Assist: A mesterséges intelligencia eszközei képesek az adatbázis sorait asszociatív tömbökké alakítani, és segíthetnek a zavaró többdimenziós tömbstruktúrák hibakeresésében.

PHP tömbök

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,

PHP tömb

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,

PHP tömb

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,

PHP tömb

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.

GYIK

A foreach ciklus a leggyakoribb módszer. Írd be a foreach parancsot ($array as $value) az egyes értékek beolvasásához, vagy a foreach parancsot ($array as $key => $value) a tömb minden elemének kulcsának és értékének beolvasásához.

A sort() függvény átrendezi az értékeket és új numerikus kulcsokkal indexeli a tömböt, így elveszíti az eredeti kulcsokat. Az asort() függvény érték szerint rendez, de minden értéket az eredeti kulcsához kötve tart, ami asszociatív tömbök esetén fontos.

Használd az array_push() vagy az $arr[] = érték függvényt a hozzáfűzéshez, az array_pop() vagy az array_shift() függvényt pedig az elejéről vagy végéről való eltávolításhoz. Egy adott elem kulcs szerinti törléséhez használd az unset() függvényt.

Igen. A mesterséges intelligencia képes megírni a lehívási ciklust, amely minden sort egy oszlopnévvel kulcsolt asszociatív tömbbe képez le, és olyan lehívási metódusok használatát javasolja, amelyek közvetlenül az adatbázis-illesztőprogramból adnak vissza asszociatív tömböket.

Igen. Illeszd be a print_r vagy a var_dump kimenetet, és a mesterséges intelligencia elmagyarázza a beágyazást, megmutatja a pontos elérési utat egy adott értékhez, például a $film['comedy'][0] értékhez, és kiszűri az eltérő kulcsokat vagy szinteket.

Foglald össze ezt a bejegyzést a következőképpen: