CodeBlanks Logo Icon CodeBlanks

in_array() ve array_search()

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

in_array() ile eleman varlığını ve array_search() ile eleman konumunu sorgulamayı öğrenirsin.

in_array() ile varlık kontrolü

in_array() bir elemanın dizi içinde olup olmadığını kontrol eder. in_array("Ali", $names) çağrısı "Ali" dizedisinin $names içinde varsa true, yoksa false döner.

Varsayılan olarak tür esnetmesi yapar; yani in_array("1", [1, 2]) true döner çünkü PHP "1" ile 1'i eşit sayar. Tür dahil sıkı karşılaştırma için üçüncü parametreye true verirsin: in_array("1", [1, 2], true) artık false döner.

array_search() ile konum bulma

array_search() bir elemanın dizideki anahtarını (indeksini) döndürür. array_search("Ali", $names) "Ali"nin indeksini verir; bulamazsa false döner.

in_array yalnızca varlığı söylerken, array_search konumu da verir. Aynı şekilde üçüncü parametre true ile sıkı karşılaştırma yapılır. Dönen değeri kontrol ederken === kullan; çünkü 0 indeksi de 'bulunamadı' ile karışabilir.

Uygulama Ara ve indeksi yazdır

$names = ["Ali", "Ayşe", "Mehmet"] dizisi tanımla. $pos = array_search("Ayşe", $names) ile "Ayşe"nin indeksini al. Sonra echo $pos . "\n" ile yazdır.

Örnek çözümü göster
$pos = array_search("Ayşe", $names); ile indeksi al. Sonra echo $pos . "\n"; ile yazdır.
Örnek çözüm:
<?php
$names = ["Ali", "Ayşe", "Mehmet"];
// "Ayşe"nin indeksini bul ve yazdır
$pos = array_search("Ayşe", $names);
echo $pos . "\n";

Kendini test et

  1. in_array ne döndürür?

    • İndeksi
    • Elemanın kendisini
    • Yeni dizi
    • true/false
    Cevabı göster

    true/false — Doğru. in_array bulursa true, bulamazsa false döner.

  2. Ali dizide var mı kontrol et

    $names = ["Ali", "Ayşe", "Mehmet"];
    if (____("Ali", $names)) {
        echo "Bulundu";
    }
    Cevabı göster
    $names = ["Ali", "Ayşe", "Mehmet"];
    if (in_array("Ali", $names)) {
        echo "Bulundu";
    }
  3. Fonksiyon ve dönüş değerini eşle

    in_array
    true veya false
    array_search
    İndeks veya false
    array_pop
    Çıkarılan eleman
  4. array_search("Ayşe", ["Ali", "Ayşe", "Mehmet"]) ne döndürür?

    • 0
    • 1
    • true
    • Ayşe
    Cevabı göster

    1 — Doğru. Ayşe 1. indekstedir; array_search 1 döner.

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