Menu
Coddy logo textTech

Type Declarations for Params

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

PHP gevşek tipli bir dildir, yani değişkenler herhangi bir tür veriyi tutabilir. Bu esneklik kullanışlı olsa da, bir fonksiyon yanlış türde bir argüman aldığında beklenmedik hatalara yol açabilir. Tip bildirimleri, parametrelerinizin tam olarak hangi tipleri kabul etmesi gerektiğini belirtmenize olanak tanır.

Tür bildirimi eklemek için, tür adını parametrenin önüne yerleştirin:

<?php
function double(int $number) {
    return $number * 2;
}

echo double(5);
?>

Bu 10 çıktısını verir. $number öncesindeki int, PHP'ye bu fonksiyonun bir tamsayı beklediğini söyler. Birisi "hello" gibi bir dize geçirirse, PHP sessizce daha sonra sorunlara neden olmak yerine bir hata üretir.

Birden fazla parametre ile tip bildirimleri kullanabilirsiniz:

<?php
function greetUser(string $name, int $age) {
    return "$name is $age years old.";
}

echo greetUser("Alice", 25);
?>

Yaygın tür bildirimleri int, float, string, bool ve array içerir. Onları kullanmak kodunuzu daha öngörülebilir hale getirir ve hataları erken yakalamanıza yardımcı olur, özellikle programlarınız büyüdükçe.

challenge icon

Görev

Kolay

Üç satır girdi okuyun:

  1. Bir kişinin adı (örneğin, Alice)
  2. Bir kişinin soyadı (örneğin, Smith)
  3. Bir doğum yılı (örneğin, 1995)

createProfile adında tip bildirimleriyle üç parametre kabul eden bir fonksiyon oluşturun:

  • $firstName olarak string
  • $lastName olarak string
  • $birthYear olarak int

Fonksiyon kişinin yaşını hesaplamalı (mevcut yıl 2024 olarak kabul edin) ve şu formatta bir dize döndürmeli:

[firstName] [lastName] is [age] years old.

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

Örnek 1:

Eğer girdiler Alice, Smith ve 1995 ise, çıktı şu olmalı:

Alice Smith is 29 years old.

Örnek 2:

Eğer girdiler Bob, Johnson ve 2000 ise, çıktı şu olmalı:

Bob Johnson is 24 years old.

Örnek 3:

Eğer girdiler Emma, Davis ve 1988 ise, çıktı şu olmalı:

Emma Davis is 36 years old.

Kendin dene

<?php
// Girişi oku
$firstName = trim(fgets(STDIN));
$lastName = trim(fgets(STDIN));
$birthYear = intval(fgets(STDIN));

// TODO: createProfile fonksiyonunu tip bildirimleriyle oluşturun
// Fonksiyon $firstName (string), $lastName (string) ve $birthYear (int) parametrelerini kabul etmeli
// Yaşı hesaplayın (mevcut yıl 2024) ve biçimlendirilmiş string'i döndürün


// Fonksiyonu çağırın ve sonucu yazdırın
echo createProfile($firstName, $lastName, $birthYear);
?>
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