CodeBlanks Logo Icon CodeBlanks

array_merge() ile birleştirme

PHP kursu · Başlangıç · Ders 61/116

array_merge() ile iki diziyi tek dizide birleştirmeyi öğrenirsin.

array_merge() ile birleştirme

array_merge() iki veya daha fazla diziyi tek bir dizide birleştirir. İki diziyi arka arkaya koyar gibi düşünebilirsin. array_merge($a, $b) çağrısı önce $a'nın elemanlarını, sonra $b'nin elemanlarını yazar.

Sayısal indeksli dizilerde elemanlar yeniden indekslenir: 0, 1, 2, ... sırasıyla dizilir. Birleşen dizide toplam eleman sayısı iki dizinin toplamına eşittir.

Sayısal ve dizgesel anahtarlar

array_merge() sayısal ve dizgesel (string) indeksli dizilerde farklı davranır. Sayısal indeksler her zaman yeniden numaralanır; bu yüzden [5 => "a"] ve [7 => "b"] birleşince [0 => "a", 1 => "b"] olur.

Dizgesel anahtarlar ise üzerine yazılır: aynı anahtar varsa son dizi değeri kazanır. Örneğin array_merge(["ad" => "Ali"], ["ad" => "Veli"]) çağrısı ["ad" => "Veli"] sonucunu verir; ilk "Ali" değeri kaybolur. Aynı anahtarlara dikkat etmen gerekir.

Uygulama İki listeyi birleştir

İki dizi tanımla: $letters = ["A", "B"] ve $more = ["C", "D"]. array_merge() ile bunları $all değişkeninde birleştir. Sonra foreach ($all as $letter) ile gez ve her elemanı echo $letter . "\n" ile ayrı satırda yazdır.

Örnek çözümü göster
Önce $all = array_merge($letters, $more); ile birleştir. Sonra foreach ($all as $letter) { echo $letter . "\n"; } ile gez ve yazdır.
Örnek çözüm:
<?php
$letters = ["A", "B"];
$more = ["C", "D"];
// İki listeyi birleştir ve yazdır
$all = array_merge($letters, $more);
foreach ($all as $letter) {
    echo $letter . "\n";
}

Kendini test et

  1. array_merge ne yapar?

    • Diziyi sıralar
    • İki diziyi birleştirir
    • Diziden eleman çıkarır
    • Diziyi tersine çevirir
    Cevabı göster

    İki diziyi birleştirir — Doğru. array_merge iki veya daha fazla diziyi tek dizide birleştirir.

  2. İki diziyi birleştirmeyi tamamla

    $a = [1, 2];
    $b = [3, 4];
    $merged = ____($a, $b);
    print_r($merged);
    Cevabı göster
    $a = [1, 2];
    $b = [3, 4];
    $merged = array_merge($a, $b);
    print_r($merged);
  3. Senaryo ve sonucunu eşle

    Sayısal indeksler
    Yeniden numaralanır
    Dizgesel anahtarlar
    Son değer kazanır
    Boş dizi ile birleştirme
    Diğer dizi döner
  4. Aşağıdaki kodun çıktısı nedir?

    $a = [1, 2];
    $b = [3, 4];
    print_r(array_merge($a, $b));
    • [1, 2, 3, 4]
    • [1, 2]
    • [3, 4]
    • [3, 4, 1, 2]
    Cevabı göster

    [1, 2, 3, 4] — Doğru. array_merge önce $a'nın, sonra $b'nin elemanlarını yazar.

Başlangıç bölümündeki tüm dersler