A PHP-ben a tömbök funkcionális adattárolók, amelyekben egy vagy több adatot tárolhatunk. A változókkal ellentétben sok adatot tárolhatnak egymástól elkülönítve.
A PHP-ben a tömbök kétféleképpen jönnek létre:
- array() előre definiált függvény (előre definiált függvény)
- [] szögletes zárójelben
PHP tömb létrehozási szabályok
- Betűk, számok (a-z A-Z 0-9) és _ (aláhúzás) használhatók a tömbelemekhez definiálandó kulcsnevekben.
- A PHP által lefoglalt szavak nem használhatók a tömbelemek kulcsneveinek meghatározásakor.
- A tömbelemekhez meghatározott kulcsnevek megkülönböztetik a kis- és nagybetűket.
- Ha egy tömbelemhez nincs megadva kulcs, a kulcs automatikusan létrejön.
- => karaktereket kell elhelyezni az egyes kulcsok és értékek közé a tömbben.
- Ha egynél több elem jön létre a tömbben, akkor minden elem után , (vessző) kell elhelyezni.
A több elemet tartalmazó tömb utolsó elemének végére nem kötelező , (vessző) elhelyezni.
PHP tömb létrehozási javaslatok és tippek
- A TV-sorozatok elnevezésénél figyelembe kell venni a választott elnevezési szabályokat. Például egy tömb elnevezése $Array, a másik tömb pedig $array néven nem ajánlott az olvashatóság miatt.
- Ha a tömbök elemeire nem adunk meg kulcsokat, hanem csak értékeket, akkor a kulcsokat a PHP automatikusan generálja. Az első billentyű 0, és minden billentyű 1-gyel nő.
- A HTML print_r() függvénye, amellyel tömböket nyomtatunk
Biztosíthatjuk, hogy a tömbök jobb megjelenésűek legyenek, ha < pre> címkékbe zárjuk őket. - Ha a tömbök utolsó eleméhez vesszőt adunk, az nem változtat semmit. Javasoljuk azonban, hogy az utolsó elemet vesszővel egészítsük ki, hogy elkerüljük a figyelmetlenségből adódó hibákat és javítsuk az olvashatóságot.
- Nem szükséges csak változókat vagy közvetlen adatokat hozzáadni értékként a tömbökhöz. Állandó vagy függvény hozzárendelhető.
- A tömbök kulcsstruktúráiban nem ajánlott speciális karaktereket és török karaktereket használni, kivéve az utf8-at, kötőjeleket és aláhúzásjeleket.
PHP tömb szintaxis
Említettük, hogy a PHP-ben kétféle módon lehet tömböket létrehozni. Az első módszerben az array() nevű alapértelmezett függvényt fogjuk használni. Hozzáadtuk az alábbi példát.
$friends = array('can', 'sevgi');Egy másik módszer a tömbök létrehozására PHP-ben a szögletes zárójelek használata. A példát alább találja.
$friends = ['cemil', 'seda'];Láttuk a PHP kulcs nélküli tömbszerkezetét, amely csak értékeket tartalmaz a fenti példákban. Most látni fogjuk a kulcsos tömb szerkezetét. Vizsgáljuk meg a példát.
'best_friend' => 'cemil',
'school_friend' => 'seda',
'home_friend' => 'mehmet',
);A fenti példában az => operátort használtuk az értékek hozzárendelésénél. Amikor értékeket rendelünk tömbökhöz, a '=>' tömb hozzárendelési operátort használjuk, nem a '=' kiegyenlítő operátort.
Az alábbi példában a PHP többdimenziós tömbszerkezetét fogjuk látni. Több tömb létrehozásakor a második tömböt az első tömb érték részében definiáljuk.
$friends = array(
'best_friends' => array(
'melih',
'deniz',
),
'school_friends' => array(
'eda',
'erdinç',
),
);PHP tömbök nyomtatása
Tömbök nyomtatása a print_r() segítségével
A print_r() függvényt használjuk tömbök nyomtatására PHP-ben. Az alábbi példában létrehoztunk egy $fruits nevű tömböt, és megadtuk a görögdinnye, a banán és a szőlő értékeit. Ezután a print_r() függvény segítségével kinyomtattuk a tömböt.
$fruits = array(
'karpuz',
'üzüm',
'muz',
);
print_r($fruits);
/*
* Çıktı:
Array ( [0] => karpuz [1] => üzüm [2] => muz )
*/Az alábbi példában az előző példában létrehozott tömböt nyomtattuk ki olvashatóbb formában HTML < pre> címkék segítségével.
$fruits = array(
'karpuz',
'üzüm',
'muz',
);
echo '<pre>';
print_r($fruits);
echo '</pre>';
/*
* Çıktı:
Array
(
[0] => karpuz
[1] => üzüm
[2] => muz
)
*/Több tömb adatait is elérhetjük a print_r() függvénnyel.
$friends = array(
'best_friends' => array(
'melih',
'deniz',
),
'school_friends' => array(
'eda',
'erdinç',
),
);
print_r($friends);
// Çıktı: Array ( [best_friends] => Array ( [0] => melih [1] => deniz ) [school_friends] => Array ( [0] => eda [1] => erdinç ) )Ha több tömb adatait a print_r() függvénnyel elérve HTML előtagokat használunk, akkor olvashatóbb struktúrában kapjuk a kimenetet.
$friends = array(
'best_friends' => array(
'melih',
'deniz',
),
'school_friends' => array(
'eda',
'erdinç',
),
);
echo '<pre>';
print_r($friends);
echo '</pre>';
/*
* Çıktı:
Array
(
[best_friends] => Array
(
[0] => melih
[1] => deniz
)
[school_friends] => Array
(
[0] => eda
[1] => erdinç
)
)
*/Tömbök nyomtatása visszhanggal
Az alábbi példában megpróbáltuk az előző példában létrehozott tömböt visszhanggal kinyomtatni, de nem tudtuk kinyomtatni. Kimenetként az Array kimenetet kaptuk. Akkor miért?
$fruits = array(
'karpuz',
'üzüm',
'muz',
);
echo $fruits;
// Çıktı: ArrayNem tudunk teljes tömböket kinyomtatni PHP visszhangképzéssel. A PHP-ben van print_r() a teljes tömbök nyomtatásához. Ha azonban a tömbnek csak egy elemét szeretnénk kinyomtatni, használhatjuk az echo-t. Az alábbi példában elértük a tömb első kulcsát. A fenti javaslatok és tippek részben említettük, hogy ha nem hozunk létre kulcsot egy tömb létrehozása közben, akkor az automatikusan létrejön. A PHP automatikusan létrehozta a kulcsokat 0-tól kezdve, és az 1. kulcs adataihoz fértünk hozzá. Kimenetként "szőlőt" kaptunk.
$fruits = array(
'karpuz',
'üzüm',
'muz',
);
echo $fruits[1];
// Çıktı: üzümTehát, ha létrehozunk egy kulcsot, hogyan érhetjük el a kulcs adatait visszhanggal? Az alábbi példában létrehoztunk egy kulcsot, és elértük a kulcsadatokat a kulcs nevének visszhanggal történő beírásával.
$fruits = array(
'fruit1' => 'karpuz',
'fruit2' => 'üzüm',
'fruit3' => 'muz',
);
echo $fruits['fruit3'];
// Çıktı: muzTöbb tömb adatainak eléréséhez létrehozzuk a második szögletes zárójelet. Vizsgáljuk meg az alábbi példát. Ebben a példában a több tömbös szerkezetet használtuk. Először a friends tömbben elértük a school_friends tömböt, majd a school_friends tömb 1. kulcsának adatait.
$friends = array(
'best_friends' => array(
'melih',
'deniz',
),
'school_friends' => array(
'eda',
'erdinç',
),
);
echo $friends['school_friends'][1];
// Çıktı: erdinç


