0Pricing
PHP Academy · Ders

Varsayılan ve Değişken Sayıda Parametreler

PHP işlevlerinde varsayılan değerleri ve değişken sayıda bağımsız değişkenleri kullanın.

Varsayılan ve Değişken Sayıda Parametreler, CoddyKit'te ücretsiz bir PHP Academy dersidir. Bu, 4 dersinin 2. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, PHP Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. PHP Academy kursu toplamda 4 dersten oluşur.

Varsayılan Parametre Değerleri

Varsayılan değerler, çağıranların argümanları atlamasına olanak tanır. Argüman iletilmediğinde varsayılan değer kullanılır:

<?php
function createUser(string $name, string $role = 'viewer'): string {
    return "$name ($role)";
}

echo createUser('Alice');          // Alice (viewer)
echo createUser('Bob', 'admin');   // Bob (admin)

Varsayılan Değer Kuralları

Varsayılan parametrelerle ilgili önemli kurallar:

  • Varsayılan değere sahip parametreler, gerekli parametrelerden sonra gelmelidir
  • Varsayılan değerler sabit ifadeler olmalıdır — işlev çağrıları veya değişkenler kullanılamaz
  • PHP 8'deki adlandırılmış argümanlar, sıralama gereksinimini esnetir

NULL Değerine İzin Veren Parametreler

NULL değerini geçerli bir argüman olarak kabul etmek ve varsayılan değer olarak NULL kullanmak için ?type kullanın:

<?php
function findUser(?int $id = null): string {
    if ($id === null) {
        return 'Searching all users';
    }
    return "User #$id";
}

echo findUser();    // Searching all users
echo findUser(42);  // User #42

... ile Değişken Sayıda Argüman Alan Fonksiyonlar

Bir parametrenin önünde ... kullanarak değişken sayıda argümanı dizi olarak kabul edin:

<?php
function sum(int ...$numbers): int {
    return array_sum($numbers);
}

echo sum(1, 2, 3);        // 6
echo sum(10, 20, 30, 40); // 100

Gerekli Parametrelerle Değişken Sayıda Argüman

Gerekli parametreleri, sonda değişken sayıda argüman alan bir parametreyle birlikte kullanabilirsiniz:

<?php
function logMessage(string $level, string ...$messages): void {
    foreach ($messages as $msg) {
        echo "[$level] $msg" . PHP_EOL;
    }
}

logMessage('INFO', 'App started', 'Config loaded');

Çağrıda Yayma Operatörü

Bir işlevi çağırırken diziyi ayrı argümanlar olarak yaymak için ... kullanın:

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

$args = [1, 2, 3];
echo add3(...$args);  // 6

$extra = [4, 5];
echo add3(1, ...$extra);  // 10

Adlandırılmış Argümanlar (PHP 8)

Adlandırılmış argümanlar, değerleri sıralamayı yok sayarak parametre adına göre geçirmenize olanak tanır:

<?php
function createTag(string $tag, string $content, string $class = ''): string {
    $cls = $class ? " class=\"$class\"" : '';
    return "<$tag$cls>$content</$tag>";
}

// Skip $class, pass $content by name
echo createTag(content: 'Hello', tag: 'p');
// <p>Hello</p>

Yerleşik Fonksiyonlarla Adlandırılmış Argümanlar

Adlandırılmış argümanlar, PHP'nin yerleşik işlevleriyle de çalışır:

<?php
$arr = [3, 1, 4, 1, 5];

// Traditional positional
$result1 = array_slice($arr, 1, 3);

// Named arguments
$result2 = array_slice(array: $arr, offset: 1, length: 3);

print_r($result1); // [1, 4, 1]

func_get_args() Eski Kullanımı

PHP 5.6'daki değişken sayıda argüman söz diziminden önce, tüm argümanlara erişmek için func_get_args() kullanılırdı. Bu işlevi eski kodlarda görebilirsiniz:

<?php
function legacySum(): int {
    $args = func_get_args();
    return array_sum($args);
}

echo legacySum(1, 2, 3, 4);  // 10
// Modern: use int ...$numbers instead

Tür Belirtilmiş Değişken Sayıda Parametre

Katı girdi denetimi için tür ipuçlarını değişken sayıda parametrelerle birleştirin:

<?php
declare(strict_types=1);

function joinStrings(string $sep, string ...$parts): string {
    return implode($sep, $parts);
}

echo joinStrings('-', 'a', 'b', 'c');  // a-b-c
// joinStrings('-', 'a', 42); // TypeError in strict mode

Varsayılan ve Adlandırılmış Parametreleri Birleştirme

Adlandırılmış argümanlar ve varsayılan değerler birlikte kullanıldığında size en yüksek esnekliği sağlar:

<?php
function sendEmail(
    string $to,
    string $subject,
    string $body = '',
    bool   $html  = false
): bool {
    // simulate send
    return true;
}

// Skip $body, pass $html by name
sendEmail('a@b.com', 'Hi', html: true);

Hızlı Kontrol

Bir PHP işlevinin tanımında ... operatörü ne işe yarar?

Özet: Varsayılan ve Değişken Sayıda Parametreler

Özet:

  • Varsayılan değerler, isteğe bağlı parametreler kullanmanıza olanak tanır
  • Varsayılan değerlere sahip parametreler, gerekli parametrelerden sonra gelir
  • ?type, isteğe bağlı varsayılan değerle birlikte NULL kullanımına olanak tanır
  • ...$args, değişken sayıdaki argümanları bir dizide toplar
  • Yayma operatörü ...$arr, çağrı noktasında bir diziyi genişletir
  • Adlandırılmış argümanlar (PHP 8), konuma göre değil ada göre geçirilir

Sıkça Sorulan Sorular

“Varsayılan ve Değişken Sayıda Parametreler” dersi ücretsiz mi?

Evet — “Varsayılan ve Değişken Sayıda Parametreler” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve PHP Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. PHP Academy kursu toplamda 4 dersten oluşur.

“Varsayılan ve Değişken Sayıda Parametreler” dersinde ne öğreneceğim?

PHP işlevlerinde varsayılan değerleri ve değişken sayıda bağımsız değişkenleri kullanın. PHP Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.

PHP Academy öğrenmeye başlamak için deneyim gerekli mi?

Önceden deneyim gerekmez. CoddyKit'te PHP Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 2. dersidir.

“Varsayılan ve Değişken Sayıda Parametreler” dersi ne kadar sürer?

Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.

Bu PHP Academy dersinde kod yazıp çalıştırabilir miyim?

Evet. Her PHP Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.

Bu kursun tüm dersleri

  1. İşlev Tanımlama ve Çağırma
  2. Varsayılan ve Değişken Sayıda Parametreler
  3. Değişken Kapsamı: Yerel ve Genel
  4. Anonim İşlevler ve Kapanışlar
← PHP Academy Sayfasına Dön