Menu
Coddy logo textTech

Geri Çağırma (Callback) Fonksiyonları

Coddy'nin PHP Journey'sinin Mantık ve Akış bölümünün bir parçası — ders 4 / 68.

Geri çağırma fonksiyonu (callback function), başka bir fonksiyona argüman olarak aktarılan bir fonksiyondur. Fonksiyonu hemen çağırmak yerine, ismini iletirsiniz; böylece alan fonksiyon, gerektiğinde onu daha sonra çağırabilir.

Bir fonksiyonu geri çağırma (callback) olarak iletmek için, fonksiyonun adını bir dize (string) olarak kullanmanız yeterlidir:

<?php
function greet($name) {
    echo "Hello, " . $name . "!";
}

function processUser($username, $callback) {
    // Bazı işlemler yap...
    $callback($username);  // Geri çağırma fonksiyonunu çağır
}

processUser("Alice", "greet");  // Çıktı: Hello, Alice!
?>

Bu örnekte, "greet" bir geri çağırma (callback) olarak processUser() fonksiyonuna iletilir. processUser() fonksiyonu daha sonra dizeyi bir fonksiyon adı olarak kullanarak geri çağırmayı çağırır.

Geri çağırma işlevleri (callbacks), fonksiyonlarınızı daha esnek hale getirdikleri için inanılmaz derecede kullanışlıdır. Aynı fonksiyon, ona hangi geri çağırma işlevini geçirdiğinize bağlı olarak farklı eylemler gerçekleştirebilir. Bu kavram, bu kursun ilerleyen kısımlarında karşılaşacağınız array_map() ve array_filter() gibi PHP'nin yerleşik birçok fonksiyonu için temel teşkil eder.

quiz iconKendini test et

Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.

quiz iconKendini test et

Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.

quiz iconKendini test et

Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.

challenge icon

Görev

Kolay

İki fonksiyon oluşturun: bir dize alan ve onu büyük harfle döndüren formatUppercase adında bir fonksiyon ve bir dize alan ve onu küçük harfle döndüren formatLowercase adında başka bir fonksiyon.

Ardından, iki parametre kabul eden applyFormat adında bir fonksiyon oluşturun: bir metin dizesi ve bir geri çağırma (callback) fonksiyon adı. Bu fonksiyon, geri çağırmayı metne uygulamalı ve sonucu döndürmelidir.

İki girdi alacaksınız: işlem türü ("upper" veya "lower") ve formatlanacak metin. Her iki girdiyi de okuyun, işlem türüne göre hangi geri çağırmanın kullanılacağını belirleyin, uygun geri çağırma ile applyFormat fonksiyonunu çağırın ve formatlanmış sonucu yazdırın.

Giriş formatı: İki satır - ilk satır işlem türünü ("upper" veya "lower") içerir, ikinci satır formatlanacak metni içerir

Beklenen çıktı: İşlem türüne göre formatlanmış metin

Kopya kağıdı

Geri çağırma (callback) fonksiyonu, başka bir fonksiyona argüman olarak aktarılan bir fonksiyondur. Fonksiyonu hemen çağırmak yerine, alan fonksiyonun gerektiğinde daha sonra çağırabilmesi için adını aktarırsınız.

Bir fonksiyonu geri çağırma fonksiyonu olarak aktarmak için, fonksiyonun adını bir dize (string) olarak kullanın:

<?php
function greet($name) {
    echo "Hello, " . $name . "!";
}

function processUser($username, $callback) {
    // Bazı işlemler yap...
    $callback($username);  // Geri çağırma fonksiyonunu çağır
}

processUser("Alice", "greet");  // Çıktı: Hello, Alice!
?>

Geri çağırmalar, hangi geri çağırma fonksiyonunu aktardığınıza bağlı olarak farklı eylemlere izin vererek fonksiyonları daha esnek hale getirir.

Kendin dene

<?php
// Girdiyi oku
$operation = trim(fgets(STDIN));
$text = trim(fgets(STDIN));

// YAPILACAK: Kodunuzu aşağıya yazın
// formatUppercase fonksiyonunu oluşturun
// formatLowercase fonksiyonunu oluşturun
// applyFormat fonksiyonunu oluşturun
// İşlem türüne göre hangi geri çağırma (callback) fonksiyonunun kullanılacağını belirleyin
// Uygun geri çağırma fonksiyonu ile applyFormat'ı çağırın

// 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