'in_array' ile Değer Kontrolü
Coddy'nin PHP Journey'sinin Mantık ve Akış bölümünün bir parçası. Ders 17 / 68.
Bir dizide belirli bir değerin mevcut olup olmadığını kontrol etmeniz gerektiğinde, PHP'nin in_array() işlevi mükemmel bir çözüm sunar. Bu işlev bir dizide arama yapar ve bir boolean değer döndürür: Değer bulunursa true, bulunmazsa false.
İşte temel sözdizimi:
<?php
$existingUsers = ["alice", "bob", "charlie"];
$newUsername = "bob";
if (in_array($newUsername, $existingUsers)) {
echo "Username already taken!";
} else {
echo "Username available!";
}
// Çıktı: Username already taken!
?>in_array() işlevi iki ana parametre alır: aradığınız değer ve içinde arama yapılacak dizi. Bir boolean döndürdüğü için if gibi koşullu ifadeler ve while döngüleriyle mükemmel şekilde çalışır.
Bu işlev, bir kullanıcının girdisinin izin verilen seçeneklerden biriyle eşleşip eşleşmediğini kontrol etmek, bir öğenin alışveriş sepetinde zaten bulunup bulunmadığını doğrulamak veya yinelenen girdilerin bir listeye eklenmediğinden emin olmak gibi doğrulama görevleri için özellikle kullanışlıdır.
Görev
Kolayİki girdi alacaksınız: JSON biçiminde mevcut renklerden oluşan bir dizi ve aranacak bir renk adı. Her iki girdiyi okuyun, JSON dizesini bir diziye dönüştürün, rengin dizide bulunup bulunmadığını kontrol etmek için in_array() kullanın ve renk bulunursa "Color available", bulunmazsa "Color not available" yazdırın.
Girdi biçimi: İki satır — ilk satır bir JSON dizisi içerir (örnek: ["red","blue","green","yellow"]), ikinci satır aranacak renk adını içerir
Beklenen çıktı: Rengin dizide bulunup bulunmadığına bağlı olarak "Color available" veya "Color not available"
Kendin dene
<?php
// Renklerin JSON dizisini oku
$jsonInput = fgets(STDIN);
$colors = (array)json_decode($jsonInput, true);
// Aranacak rengi oku
$searchColor = trim(fgets(STDIN));
// TODO: Rengin dizide var olup olmadığını kontrol etmek için kodunuzu aşağıya yazın
// Sonucu yazdır
echo $result;
?>Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.
Mantık ve Akış bölümündeki tüm dersler
1İleri Seviye Fonksiyonlar
Anonim FonksiyonlarClosure'lar ve 'use'Ok Fonksiyonları (Arrow Functions)Geri Çağırma (Callback) Fonksiyonları'call_user_func' KullanımıDeğişken FonksiyonlarReferans ile Değer AktarımıÖz Yinelemeli (Recursive) FonksiyonlarÖzet: Fonksiyon Karması4Çok Boyutlu Diziler
2 Boyutlu Dizi Oluşturma2 Boyutlu Dizi Elemanlarına Erişme2 Boyutlu Dizi Elemanlarını Değiştirmeİç İçe Döngülerle Yineleme2 Boyutlu İlişkisel DizilerÖzet: Basit Izgara Egzersizi2İleri Düzey Dizi İşlemleri
'array_push' ile Ekleme'array_pop' ile Silme'array_unshift' ile Ekleme'array_shift' ile Silmeİndisli Dizileri Birleştirmeİlişkisel Dizileri Birleştirme'array_slice' ile Kesit Alma'in_array' ile Değer Kontrolü'array_search' ile Anahtar AramaÖzet: Çalma Listesi Alıştırması3Dizileri Sıralama
İndisli Dizileri Artan Sırada Sıralamaİndisli Dizileri Azalan Sırada Sıralamaİlişkisel Dizileri Değere Göre Sıralamaİlişkisel Dizileri Anahtara Göre SıralamaDoğal Sıralama (Natural Order)'usort' ile Özel SıralamaÖzet: Liderlik Tablosu SıralamaKendi başına pratik yap: Online PHP derleyicisi