raderde 1
raderde
Cannn6161 1
Cannn6161
noisiv 1
noisiv
Manwe Work 1
Manwe Work
Mt2Hizmet 1
Mt2Hizmet
melankolıa18 1
melankolıa18
romegames 1
romegames
Krutzo 1
Krutzo
shrpnl 1
shrpnl
Hikaye Ekle
Reklam vermek için turkmmo@gmail.com

PHP - Ok Fonksiyonları

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,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
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!

https___thepracticaldev.s3.amazonaws.com_i_xr6so18hm5gi1jvi2kce.png


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:


Ü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.
 

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

Geri
Üst