Junior
Anonim fonksiyonlar nedir?
sobes.tech yapay zeka
AI'dan gelen yanıt
İsimsiz fonksiyon (veya Closure) isimsiz bir fonksiyondur. Bir değişkende saklanabilir ve diğer fonksiyonlara argüman olarak iletilebilir.
Ana özellikler:
- İsimsiz.
- Bir değişkene atanabilir.
- Başka bir fonksiyona (geri çağrı) parametre olarak iletilebilir.
useyapısı aracılığıyla ebeveyn kapsamındaki değişkenleri kullanabilir.
Kullanım örneği:
<?php
// İsimsiz fonksiyonun bir değişkene atanması
$greet = function($name)
{
printf("Merhaba, %s!\n", $name);
};
$greet('Dünya'); // İsimsiz fonksiyon çağrısı
// Geri çağrı olarak kullanımı
$numbers = [1, 2, 3, 4, 5];
$doubled = array_map(function($n) {
return $n * 2;
}, $numbers);
print_r($doubled);
// `use` ile ebeveyn kapsamındaki değişkenlerin kullanımı
$message = 'Merhaba';
$example = function () use ($message) {
echo $message;
};
$example();
İsimsiz fonksiyonların avantajları:
- Kısa ve tek kullanımlık fonksiyonlar için uygundur.
- Sıkça yüksek dereceli fonksiyonlar ile kullanılırlar (örneğin,
array_map,usort). - Kapanışlar (closures) oluşturmayı sağlarlar.
Dezavantajlar:
- Karmaşık fonksiyonlar için okunabilirliği azaltabilir.
- İsmin olmaması nedeniyle hata ayıklama biraz daha zor olabilir.