Menu
Coddy logo textTech

Return Type Declarations

Coddy'nin PHP Journey'sinin Temeller bölümünün bir parçası — ders 66 / 71.

Parametreler için türleri bildirebildiğiniz gibi, bir fonksiyonun döndürmesi gereken türü de belirtebilirsiniz. Dönüş türü bildirimleri, PHP'ye fonksiyonunuzun tam olarak hangi türde bir değer döndüreceğini söyler, bir fonksiyon yanlış türde bir değer döndürdüğünde hataları yakalamaya yardımcı olur.

Bir dönüş türü eklemek için, parametre listesinin kapanış parantezinden sonra bir iki nokta üst üste ve ardından türü yerleştirin:

<?php
function add(int $a, int $b): int {
    return $a + $b;
}

echo add(5, 3);
?>

Bu 8 çıktısını verir. Parantezlerden sonraki : int, bu fonksiyonun bir tamsayı döndürmesi gerektiğini belirtir. Eğer bunun yerine bir dize döndürmeye çalışsaydınız, PHP bir hata üretirdi.

Parametre bildirimlerinde kullanılan aynı türleri kullanabilirsiniz: int, float, string, bool, ve array. Ayrıca hiçbir şey döndürmeyen fonksiyonlar için void adlı özel bir tür de vardır:

<?php
function sayHello(string $name): void {
    echo "Hello, $name!\n";
}

sayHello("Alice");
?>

Bir void fonksiyonu, bir değer içeren return ifadesine sahip olamaz. Parametre tiplerini dönüş tipleriyle birleştirmek, fonksiyonlarınızı kendi kendini belgeleyen hale getirir—kodu okuyan herkes hemen neyin girdiğini ve neyin çıktığını bilir.

challenge icon

Görev

Kolay

İki satır giriş oku:

  1. Ondalık sayı olarak bir fiyat (örneğin, 49.99)
  2. Tam sayı olarak bir indirim yüzdesi (örneğin, 20)

calculateFinalPrice adında bir fonksiyon oluşturun ki iki parametreyi tip bildirimleriyle kabul etsin:

  • $price olarak float
  • $discountPercent olarak int

Fonksiyon float dönüş tipi bildirimi olmalı ve indirim uygulandıktan sonraki nihai fiyatı döndürmeli.

Fonksiyonu giriş değerleriyle çağırın ve döndürülen sonucu yazdırın.

Örnek 1:

Eğer girişler 100.00 ve 25 ise, çıktı şu olmalı:

75

Örnek 2:

Eğer girişler 49.99 ve 10 ise, çıktı şu olmalı:

44.991

Örnek 3:

Eğer girişler 200.50 ve 50 ise, çıktı şu olmalı:

100.25

Kendin dene

<?php
// Girdi oku
$price = floatval(fgets(STDIN));
$discountPercent = intval(fgets(STDIN));

// TODO: calculateFinalPrice adında bir fonksiyon oluşturun:
// - $price parametresi float tip bildirimi ile
// - $discountPercent parametresi int tip bildirimi ile
// - float dönüş tipi bildirimi
// Fonksiyon indirimi uyguladıktan sonra nihai fiyatı döndürmelidir


// Fonksiyonu çağırın ve sonucu yazdırın
echo calculateFinalPrice($price, $discountPercent);
?>
quiz iconKendini test et

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

Temeller bölümündeki tüm dersler