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

PHP - Anonim 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,442
Çö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,207
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!

hq720.jpg


Anonim Fonksiyonlar Nelerdir?

PHP anonim fonksiyonların tanımlanmasına izin verir. Normalde, PHP'de bir fonksiyon tanımladığımızda, genellikle fonksiyonu gerektiğinde çağırmak için kullanılan bir isim veririz. Buna karşılık, anonim bir fonksiyon, tanımlama sırasında herhangi bir ismi belirtilmemiş bir fonksiyondur. Böyle bir fonksiyona kapanış veya lambda fonksiyonu da denir.

Bazen, yalnızca bir kez kullanılmak üzere bir işlev isteyebilirsiniz. Anonim işlevlerin en yaygın kullanımı, satır içi bir geri çağırma işlevi oluşturmaktır.

Anonim fonksiyonlar Closure sınıfı kullanılarak uygulanır. Closure, tanımlandığı ortamın üzerinde kapanan anonim bir fonksiyondur.

Anonim bir işlevi tanımlamanın sözdizimi aşağıdaki gibidir:

$var=function ($arg1, $arg2) { return $val; };

Fonksiyon anahtar sözcüğü ile açılış parantezi arasında bir fonksiyon adı olmadığını ve fonksiyon tanımından sonra bir noktalı virgül olduğunu unutmayın. Bu, anonim fonksiyon tanımlarının ifadeler olduğu anlamına gelir. Bir değişkene atandığında, anonim fonksiyon daha sonra değişkenin adı kullanılarak çağrılabilir.

Örnek

Aşağıdaki örneğe bir göz atın.

PHP:
<?php
   $add = function ($a, $b) {
      return "a:$a b:$b addition: " . $a+$b;
   };
   echo $add(5,10);
?>

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

a:5 b:10 addition: 15


Geri Arama Olarak Anonim İşlev

Anonim işlevler genellikle geri çağırmalar olarak kullanılır. Geri çağırma işlevleri başka bir işlevin argümanlarından biri olarak kullanılır. Anonim bir işlev anında yürütülür ve dönüş değeri, yerleşik veya kullanıcı tanımlı bir işlev olabilen ana işlevin 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 anonim bir fonksiyon kullanıyoruz.

PHP:
<?php
   $arr = [10,3,70,21,54];
   usort ($arr, function ($x , $y) {
      return $x > $y;
   });
   foreach ($arr as $x){
      echo $x . "\n";
   }
?>

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


Örnek

Aşağıdaki örnek, bir dizideki ardışık sayılardan sonraki kümülatif toplamı hesaplamak için anonim bir işlev kullanır. Burada, array_walk() işlevini kullanırız. Bu işlev, dizideki her bir öğeye kullanıcı tanımlı bir işlev uygular.

PHP:
<?php
   $arr=array(1,2,3,4,5);
   array_walk($arr, function($n){
      $s=0;
      for($i=1;$i<=$n;$i++){
         $s+=$i;
      }
      echo "Number: $n Sum: $s". PHP_EOL;
   });
?>

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

Number: 1 Sum: 1
Number: 2 Sum: 3
Number: 3 Sum: 6
Number: 4 Sum: 10
Number: 5 Sum: 15

Anonim İşlev (Kapanış Olarak)

Kapatma da " use " anahtar sözcüğü yardımıyla kapsamı dışındaki değişkenlere erişebilen anonim bir fonksiyondur.

Örnek

Aşağıdaki örneğe bir göz atın.

PHP:
<?php
   $maxmarks=300;
   $percent=function ($marks) use ($maxmarks) {
      return $marks*100/$maxmarks;
   };
   $m = 250;
   echo "Marks = $m Percentage = ". $percent($m);
?>

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

Marks = 250 Percentage = 83.333333333333
 

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

Geri
Üst