Best Studio 1
Best Studio
D 1
delimuratt
Aliyldrim 1
Aliyldrim
Mt2Hizmet 1
Mt2Hizmet
noisiv 1
noisiv
Manwe Work 1
Manwe Work
melankolıa18 1
melankolıa18
Agora Metin2 1
Agora Metin2
Cannn6161 1
Cannn6161
kralhakan2009 1
kralhakan2009
Vahsi Uzman 1
Vahsi Uzman
Hikaye Ekle
Reklam vermek için turkmmo@gmail.com

PHP - Adlandırılmış Argümanlar

Carissa

Administrator
Telefon Numarası Onaylanmış Üye TC Kimlik Numarası Doğrulanmış Üye Turkmmo Discord Nitro Booster
Admin
VIP Üye
Katılım
2 Mar 2015
Konular
59,189
Mesajlar
88,439
Çözüm
109
Online süresi
4mo 16d
Reaksiyon Skoru
14,280
Altın Konu
2,398
TM Yaşı
11 Yıl 3 Ay 6 Gün
Başarım Puanı
1,051
MmoLira
695,092
DevLira
234
Ticaret - 0%
0   0   0

ROHAN2 WORLD 1-120 TR TİPİ OFFICIAL YOHARA, BALATHOR VE AMON! 80. GÜNÜNDE! +10.000 ONLİNE! HİLE VE BOT %100 ENGELLİ HEMEN TIKLA!

named-arguments-in-php.png


Named Arguments özelliği PHP'ye 8.0 sürümüyle birlikte tanıtılmıştır. Bu, bir fonksiyonu çağırırken pozisyonel argümanları geçirme mekanizmasının bir uzantısıdır.

Varsayılan olarak, geçirilen argümanların değerleri aynı konumdaki karşılık gelen resmi argümanlara kopyalanır. PHP'deki adlandırılmış argümanların bu özelliği, değerin konuma göre değil parametre adına göre geçirilmesini mümkün kılar.

function myfunction($x, $y) {
statement1;
statement2;
. . .
}

myfunction(10, 20);

Bu durumda değerler "x" ve "y" değişkenlerine bildirim sırasına göre geçirilir. Yani, ilk değer ilk argümana, ikinci değer ikinci argümana ve benzeri şekilde devam eder. "x" ve "y" değişkenleri konumsal argümanlardır.

Değerleri adlandırılmış argümanlarla geçirmek için, değerin geçirileceği argümanın parametre adını belirtin. Parametrenin adı, "$" sembolü olmadan resmi argümanın adıdır. Geçirilecek değer, ":" sembolünün önüne konur.

myfunction(x:10, y:20);

Örnek

İşte PHP'de adlandırılmış argümanların nasıl kullanılabileceğini gösteren kod:

PHP:
<?php 
   function  myfunction($x, $y) {
      echo "x = $x  y = $y";
   }

   myfunction(x:10, y:20);
?>

Aşağıdaki çıktıyı üretecektir:


Adlandırılmış argümanlar kullanmak, değerleri herhangi bir sırayla geçirmeyi mümkün kılar ve argümanların fonksiyon tanımında bildirildiği sırayla olması gerekmez. Aşağıda gösterildiği gibi myfunction()'ı çağırabiliriz ve aynı sonucu üretecektir.

myfunction(y:20, x:10);

Bu özellik sayesinde argümanlar sıra bağımsız ve kendi kendini belgeleyen hale gelir. Ayrıca varsayılan değerlere sahip argümanları keyfi olarak atlamak da mümkün olur.


Adlandırılmış Argümanları Konumsal Argümanlarla Birleştirme

Adlandırılmış argümanlar, konumsal argümanlardan sonra gelmesi koşuluyla konumsal argümanlarla birleştirilebilir.

Örnek

PHP:
<?php 
   function  myfunction($x, $y, $z) {
      echo "x = $x  y = $y  z = $z";
   }
   myfunction(10, z:20, y:30);
?>

Aşağıdaki çıktıyı üretecektir:

x = 10 y = 30 z = 20

Ancak, $z'yi konumsal bir argüman olarak ele almaya çalışırsanız,

myfunction(x:10, y:20, 30);

Bu durumda PHP aşağıdaki hatayla karşılaşacaktır:

PHP Fatal error: Cannot use positional argument after
named argument in hello.php on line 7

Bir Diziden Adlandırılmış Argümanları Geçirme

PHP 8.1.0 ayrıca argümanları açtıktan sonra adlandırılmış argüman kullanmaya izin veren başka bir özellik daha tanıttı. Her argümana ayrı ayrı değer sağlamak yerine, bir dizideki değerler, diziden önce "..." (üç nokta) kullanılarak karşılık gelen argümanlara açılabilir.

Örnek

PHP:
<?php 
   function  myfunction($x, $y, $z=30) {
      echo "x = $x  y = $y  z = $z";
   }
   myfunction(...[10, 20], z:30);
?>

Aşağıdaki çıktıyı üretecektir:

x = 10 y = 20 z = 30

Aynı parametrenin birden fazla kez geçirilmesinin aşağıdaki gibi bir istisnaya yol açacağını unutmayın:

myfunction(x:10, z:20, x:20);

Hata

PHP Fatal error: Uncaught Error: Named parameter $x
overwrites previous argument in hello.php:7
 

Şu an konuyu görüntüleyenler (Toplam : 0, Üye: 0, Misafir: 0)

Geri
Üst