- Katılım
- 2 Mar 2015
- Konular
- 59,189
- Mesajlar
- 88,441
- Çözüm
- 109
- Online süresi
- 4mo 16d
- Reaksiyon Skoru
- 14,280
- Altın Konu
- 2,398
- TM Yaşı
- 11 Yıl 3 Ay 7 Gün
- Başarım Puanı
- 1,051
- MmoLira
- 695,092
- DevLira
- 234
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!
Ok fonksiyonları PHP 7.4 sürümünde tanıtıldı. Ok fonksiyonları anonim fonksiyonlar yazmak için daha basit ve daha öz bir sözdizimi sağlar. PHP 7.4 ile ok fonksiyonlarını tanımlamak için geleneksel "function " anahtar kelimesi yerine bir anahtar kelime " fn " tanıtıldı.
fn (argument_list) => expr
- " => " sembolünden sonra sadece bir ifade vardır ve değeri ok fonksiyonunun dönüş değeridir.
- Ok fonksiyonunun açık bir return ifadesi yoktur.
- Anonim fonksiyonda olduğu gibi, ok fonksiyonu da çağrılabilmesi için bir değişkene atanır.
Örnek
Aşağıdaki örnek, PHP'de ok işlevini nasıl kullanabileceğinizi gösterir.
PHP:
<?php
$add = fn ($a, $b) => $a + $b;
$x = 10;
$y = 20;
echo " x: $x y: $y Addition: " . $add($x, $y);
?>
Aşağıdaki çıktıyı üretecektir:
x: 10 y: 20 Addition: 30
Ok İşlevini Geri Çağırma İşlevi Olarak Kullanma
Ok fonksiyonunu geri çağırma fonksiyonu olarak da kullanabiliriz. Geri çağırma fonksiyonları başka bir fonksiyonun argümanlarından biri olarak kullanılır. Ok fonksiyonu anında yürütülür ve "=>" sonrasındaki ifadenin değeri, yerleşik veya kullanıcı tanımlı bir fonksiyon olabilen ana fonksiyonun argümanı olur.Örnek
Bu örnekte, kullanıcı tanımlı bir karşılaştırma fonksiyonu kullanarak bir diziyi değerlere göre sıralayan yerleşik bir fonksiyon olan usort() fonksiyonunun içinde bir ok fonksiyonunu kullanıyoruz.
PHP:
<?php
$arr = [10,3,70,21,54];
usort ($arr, fn ($x , $y) => $x > $y);
foreach ($arr as $x){
echo $x . "\n";
}
?>
Aşağıdaki çıktıyı üretecektir:
3
10
21
54
70
Üst Kapsamdan Değişkenlere Erişim
Ok işlevleri, ana kapsamdaki değişkenlere otomatik olarak erişebilir. Anonim işlevlerin aksine, " use " anahtar sözcüğü, bir kapanış işlevi görmesi için gerekli değildir. İfadede kullanılan bir değişken ana kapsamda tanımlandığında, örtük olarak değere göre yakalanır.
PHP:
<?php
$maxmarks=300;
$percent=fn ($marks) => $marks*100/$maxmarks;
$m = 250;
echo "Marks = $m Percentage = ". $percent($m);
?>
Aşağıdaki çıktıyı üretecektir:
Marks = 250 Percentage = 83.333333333333
Örnek
Ok fonksiyonları, iç içe geçmiş olsalar bile değişkenleri değerlerine göre otomatik olarak yakalar.Aşağıdaki örnekte, bir ok fonksiyonu başka bir ok fonksiyonunun ifade kısmında tanımlanmıştır.
PHP:
<?php
$z = 1;
$fn = fn($x) => fn($y) => $x * $y + $z;
$x = 5;
$y = 10;
echo "x:$x y:$y \n";
echo "Result of nested arrow functions: " . ($fn($x)($y));
?>
Aşağıdaki çıktıyı üretecektir:
x:5 y:10
Result of nested arrow functions: 51
Tıpkı anonim fonksiyonlarda olduğu gibi, ok fonksiyonu sözdizimi, parametre ve dönüş tipleri, varsayılan değerler, değişken değerler ve referansla geçirme ve döndürme gibi keyfi fonksiyon imzalarına izin verir.

