Ok Fonksiyonları (Arrow Functions)
Coddy'nin PHP Journey'sinin Mantık ve Akış bölümünün bir parçası. Ders 3 / 68.
PHP 7.4 ile tanıtılan ok işlevleri, basit anonim işlevleri yazmak için daha özlü bir yol sağlar. Tam function söz dizimi yerine fn anahtar sözcüğünü kullanarak kodunuzu daha kısa ve daha temiz hâle getirir.
Ok fonksiyonunu şu şekilde oluşturursun:
<?php
$greeting = fn($name) => "Hello, " . $name . "!";
echo $greeting("Alice"); // Çıktı: Hello, Alice!
?>Temel farklara dikkat edin: ok fonksiyonları function yerine fn kullanır, ifadeyi işaret eden bir => okuna sahiptir ve basit ifadeler için süslü parantezlere veya bir return ifadesine ihtiyaç duymazlar.
Ok fonksiyonlarının en büyük avantajı, üst kapsamdaki değişkenleri otomatik olarak yakalamalarıdır - use anahtar kelimesine gerek yoktur:
<?php
$message = "Welcome";
$greeting = fn($name) => $message . ", " . $name . "!";
echo $greeting("Bob"); // Çıktı: Welcome, Bob!
?>Ok fonksiyonları, geleneksel anonim fonksiyon sözdiziminin çok uzun kaldığı kısa ve basit işlemler için mükemmeldir.
Görev
KolayÜrün adını parametre olarak alan ve biçimlendirilmiş bir ürün etiketi döndüren bir ok işlevi oluşturun. Ok işlevi, çevreleyen kapsamdan bir kategori adını yakalamalıdır.
İki girdi alacaksınız: kategori adı ve ürün adı. Her iki girdiyi okuyun, kategoriyi yakalayan ve ürün etiketini "[Category] Product" biçiminde biçimlendiren bir ok işlevi oluşturun, ok işlevini ürün adıyla çağırın ve sonucu yazdırın.
Girdi biçimi: İki satır — ilk satır kategori adını, ikinci satır ürün adını içerir
Beklenen çıktı: "[Category] Product" biçimindeki biçimlendirilmiş ürün etiketi
Kendin dene
<?php
// Girdiyi oku
$category = trim(fgets(STDIN));
$product = trim(fgets(STDIN));
// YAPILACAK: Kodunuzu aşağıya yazın
// Kategoriyi yakalayan ve ürün etiketini biçimlendiren bir ok fonksiyonu oluşturun
// Ok fonksiyonunu çağırın ve sonucu yazdırın
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