Menu
Coddy logo textTech

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.

challenge icon

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;
?>
quiz iconKendini test et

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

Kendi başına pratik yap: Online PHP derleyicisi