Php 8 Değişken Sayıda Parametre Gönderimi

Php 8 Değişken Sayıda Parametre Gönderimi

PHP 8'de, bir fonksiyona değişken sayıda parametre göndermek için birkaç farklı yöntem vardır. En yaygın kullanılan yöntemler arasında ... (splat operatörü) ve func_get_args() fonksiyonu bulunur.

1. Splat Operatörü (Variadic Functions)

PHP 5.6 ile tanıtılan ... (splat operatörü), PHP 8'de de kullanılmaya devam etmektedir. Bu operatör, bir fonksiyona değişken sayıda parametre almanızı sağlar ve bu parametreleri bir dizi olarak yakalar.

Örnek:

function toplam(...$sayilar ) { return array_sum($sayilar); } echo toplam(1, 2, 3, 4); // 10 çıktısını verir

Burada ...$sayilar ifadesi, fonksiyona gönderilen tüm parametreleri bir dizi olarak alır.

2. func_get_args() Fonksiyonu

Bu yöntem daha eski PHP sürümlerinde de kullanılır ve fonksiyona kaç parametre gönderildiğine bakmaksızın tüm parametreleri bir dizi olarak almanızı sağlar.

Örnek:

function toplam( ) { $sayilar = func_get_args(); return array_sum($sayilar); } echo toplam(1, 2, 3, 4); // 10 çıktısını verir

3. Splat Operatörü ile Tip Tanımlamaları

PHP 8 ile birlikte tip güvenliği artırıldı. Dolayısıyla, ... operatörünü kullanırken parametrelerin tipini de belirtebilirsiniz.

Örnek:

function toplama( int ...$sayilar ): int { return array_sum($sayilar); } echo toplama(1, 2, 3, 4); // 10 çıktısını verir

Bu örnekte int ...$sayilar ifadesi ile sadece tam sayılar alınacağını belirtmiş oluyoruz.

4. Splat Operatörünü Diziye Uygulama

Splat operatörünü, bir diziyi fonksiyona parametre olarak göndermek için de kullanabilirsiniz.

Örnek:

function toplama( int ...$sayilar ): int { return array_sum($sayilar); } $dizi = [1, 2, 3, 4]; echo toplama(...$dizi); // 10 çıktısını verir

Bu örnekte, ...$dizi ile diziyi parçalayarak, her bir elemanını ayrı bir parametre olarak fonksiyona gönderiyoruz.

Sonuç

PHP 8'de değişken sayıda parametre gönderimi yapmak oldukça esnektir. Genellikle ... operatörü en modern ve kullanışlı yöntemdir.



Yorum Ekle

Üzerine gel