Php 8 Fonksiyona Parametre Gönderme

Php 8 Fonksiyona Parametre Gönderme

PHP 8'de fonksiyonlara parametre gönderme, önceki sürümlerde olduğu gibi işlev görür, ancak PHP 8 ile birlikte gelen bazı yeni özellikler ve iyileştirmeler, parametre kullanımını daha esnek hale getirmiştir. Parametreler, fonksiyonlara dinamik veri iletmek için kullanılır. Fonksiyon çağrıldığında parametreler sağlanır ve fonksiyonun içinde kullanılır.

1. Temel Parametre Kullanımı

PHP'de bir fonksiyon tanımlarken, parantez içinde belirtilen değişkenler parametre olarak adlandırılır. Bu parametreler, fonksiyon çağrıldığında belirli değerler alır.

Örnek:

<?php function selamla( $isim ) { echo "Merhaba, $isim!"; } selamla("Ali"); // Çıktı: Merhaba, Ali! selamla("Ayşe"); // Çıktı: Merhaba, Ayşe! ?>

Bu örnekte, selamla() fonksiyonuna bir isim parametresi gönderilir. Fonksiyon çağrıldığında, bu parametre ilgili değeri alır ve fonksiyon içinde kullanılır.

2. Varsayılan Parametre Değerleri

Bir fonksiyon tanımlarken, parametrelere varsayılan değerler atanabilir. Fonksiyon çağrıldığında bu parametreler verilmezse, varsayılan değerler kullanılır.

Örnek:

<?php function selamla( $isim = "Dünya" ) { echo "Merhaba, $isim!"; } selamla(); // Çıktı: Merhaba, Dünya! selamla("Mehmet"); // Çıktı: Merhaba, Mehmet! ?>

Bu örnekte, selamla() fonksiyonu çağrılırken herhangi bir parametre verilmezse varsayılan olarak "Dünya" değeri kullanılır.

3. Tip Belirleme (Type Hinting)

PHP 8'de fonksiyon parametrelerinin hangi türde veri alacağını belirlemek mümkündür. Bu, tip hatalarını önleyerek daha güvenilir kod yazmanıza olanak tanır. Veri türleri, parametre isminin önüne eklenir.

Örnek (Tip Belirleme):

<?php function topla( int $a, int $b ) { return $a + $b; } echo topla(5, 10); // Çıktı: 15 ?>

Bu örnekte, topla() fonksiyonu sadece int türünde değerler alır. Eğer başka bir veri tipi (örneğin string) girilirse PHP hata verir.

4. Birden Fazla Parametre Gönderme

Bir fonksiyon, birden fazla parametre alabilir. Parametreler virgülle (,) ayrılır.

Örnek:

<?php function bilgi( $isim, $yas, $sehir ) { echo "$isim, $yas yaşında ve $sehir'de yaşıyor."; } bilgi("Ali", 25, "İstanbul"); // Çıktı: Ali, 25 yaşında ve İstanbul'da yaşıyor. ?>

5. Adlandırılmış Parametreler (Named Arguments)

PHP 8 ile gelen adlandırılmış parametreler, argümanları sıraya bağlı kalmaksızın isimleriyle fonksiyona iletmenizi sağlar. Bu, özellikle çok sayıda parametreye sahip fonksiyonlarda kullanılabilir.

Örnek:

<?php function bilgi( $isim, $yas, $sehir ) { echo "$isim, $yas yaşında ve $sehir'de yaşıyor."; } bilgi(yas: 30, sehir: "Ankara", isim: "Ayşe"); // Çıktı: Ayşe, 30 yaşında ve Ankara'da yaşıyor. ?>

Bu örnekte, parametreler ismine göre sırasız bir şekilde iletilmiştir.

6. Sınırsız Sayıda Parametre (Variadic Functions)

PHP'de fonksiyonlar, ... (variadic) operatörü kullanılarak sınırsız sayıda parametre alabilir. Bu parametreler, bir dizi olarak fonksiyon içinde işlenir.

Örnek:

<?php function topla(...$sayilar ) { return array_sum($sayilar); } echo topla(1, 2, 3, 4); // Çıktı: 10 ?>

Bu örnekte, topla() fonksiyonu sınırsız sayıda parametre alabilir ve tüm bu parametreleri toplayarak sonucu döndürür.

7. Referans ile Parametre Gönderme

PHP'de bir parametreyi referans ile geçirerek, fonksiyonun içinde yapılan değişikliklerin orijinal değişkene yansımasını sağlayabilirsiniz. Referans ile parametre geçmek için & işareti kullanılır.

Örnek:

<?php function arttir(&$sayi ) { $sayi++; } $deger = 5; arttir($deger); echo $deger; // Çıktı: 6 ?>

Bu örnekte, arttir() fonksiyonu $deger değişkeninin değerini referans ile alır ve doğrudan değiştirir.

8. Fonksiyon Parametrelerine Tip Belirleme ile Birden Fazla Veri Tipi (Union Types)

PHP 8 ile gelen union types özelliği, bir parametrenin birden fazla veri türünde olabileceğini belirtmeye olanak tanır. Bu, bir fonksiyonun farklı türlerde verilerle çalışmasını sağlar.

Örnek:

<?php function topla( int|float $a, int|float $b ): int|float { return $a + $b; } echo topla(5, 2.5); // Çıktı: 7.5 ?>

Bu örnekte, topla() fonksiyonu hem int hem float türünde parametreler alabilir ve bunlarla işlem yapabilir.

9. Varsayılan ve Zorunlu Parametrelerin Birlikte Kullanımı

Varsayılan parametreler her zaman zorunlu parametrelerden sonra gelmelidir. Bu kurala dikkat edilmezse PHP hata verir.

Örnek:

<?php function selamla( $isim, $mesaj = "Merhaba" ) { echo "$mesaj, $isim!"; } selamla("Ali"); // Çıktı: Merhaba, Ali! selamla("Ayşe", "Günaydın"); // Çıktı: Günaydın, Ayşe! ?>

Bu örnekte, selamla() fonksiyonunda birinci parametre zorunlu, ikinci parametre ise varsayılan bir değere sahiptir.

10. Boş Parametreler (Null Arguments)

Bir parametrenin boş (null) olabileceği durumu belirtmek için ? işareti kullanılabilir. Bu, opsiyonel parametrelerin null olabileceğini belirtir.

Örnek:

<?php function selamla(?string $isim ) { if ($isim) { echo "Merhaba, $isim!"; } else { echo "Merhaba, misafir!"; } } selamla(null); // Çıktı: Merhaba, misafir! selamla("Ali"); // Çıktı: Merhaba, Ali! ?>

Sonuç

PHP 8'de fonksiyonlara parametre gönderme, hem tip belirleme hem de esnek parametre kullanımı açısından oldukça güçlü hale getirilmiştir. Varsayılan değerler, adlandırılmış argümanlar, referans ile parametre geçme ve sınırsız sayıda parametre kabul etme gibi özellikler, fonksiyonları daha dinamik ve esnek hale getirir.



Yorum Ekle

Üzerine gel