Az array_merge() egyesíti egy vagy több tömb elemeit úgy, hogy a második tömb elemeit hozzáfűzi az elsőéhez, és visszadja az eredményül kapott tömböt.
Ha a megadott tömbökben ugyanolyan string kulcsok vannak, akkor a későbbi felülírja az előzőt. Ha a tömböknek ugyanolyan numerikus indexei vannak, akkor nem ez történik, hanem mindegyiket új értékként a tömbbe illeszti.
Ha csak egy tömböt adsz meg, és az számokkal van indexelve, a kulcsok újraindexelődnek folytonos módon. Asszociatív tömbök esetén a többszörös bejegyzéseket az utolsó fogja képviselni. Lásd a harmadik példát.
Példa 2. Egyszerű array_merge() példa
Nem szabad elfelejteni, hogy a numerikus indexeket újraszámozza a függvény!
Ha teljesen meg kell őrizni a tömb indexeit, akkor a + operátorral kell egymáshoz fűzni azokat:
A numerikus kulcsot megőrizzük, ezért a társítás megmarad.
|
Példa 3. array_merge() példa
A fenti példa a következő kimenetet adja:
|
Megjegyzés: A közös indexek "elnyomják" egymást, ami azt jelenti, hogy az első index előforduláshoz tartozó értéket fogja az eredmény tartalmazni.
Figyelem | |
Az array_merge() függvény viselkedése a PHP 5-ben megváltozott. Ellentétben a korábbiakkal, már csak tömb típusú paramétereket fogad el. Ez típuskényszerítéssel áthidalható. Hogy hogyan, lásd az alábbi példát:
|
Lásd még az array_merge_recursive() és az array_combine() függvényt valamint a tömboperátorokat!