Junior
PHP-də ox funksiyaları və anonim funksiyalar nədir?
sobes.tech Süni İntellekt
AI-dan cavab
Oklar funksiyalar, PHP 7.4-də təqdim olunan anonim funksiyalar üçün sintaktik şəkərdir. Onlar sadə lambda funksiyalarını daha qısa yazmaq üçün daha qısa yol təqdim edir.
-
Anonim funksiyalar (qapılar):
- Daha çox sətir kod daxil edə bilər və mürəkkəb məntiqə malik ola bilər.
useaçar sözünü istifadə edərək yuxarıdakı sahədən dəyişənləri idxal edir.- Daha çevikdir və mürəkkəb tapşırıqlar üçün uyğundur.
-
Ok funksiyaları:
- Yalnız bir ifadə ehtiva edir və nəticəsi dolayı yolla geri qaytarılır.
- Avtomatik olaraq yuxarıdakı sahədən dəyişənlərə giriş imkanı verir (
usetələb etmir). - Sadə və tək sətirli əməliyyatlar üçün nəzərdə tutulmuşdur.
Budur nümunələr:
<?php
// Anonim funksiya
$greet = function ($name) {
return "Salam, " . $name;
};
echo $greet('Dünya') . "\n";
// `use` ilə anonim funksiya
$message = 'Salamlar';
$greetWithMsg = function ($name) use ($message) {
return $message . ", " . $name;
};
echo $greetWithMsg('Dost') . "\n";
<?php
// Ok funksiyası
$greetArrow = fn ($name) => "Salam, " . $name;
echo $greetArrow('Dünya') . "\n";
// Üst sahəyə avtomatik giriş ilə ok funksiyası
$messageArrow = 'Salamlar';
$greetArrowWithMsg = fn ($name) => $messageArrow . ", " . $name;
echo $greetArrowWithMsg('Dost') . "\n";
Qadağalarda fərqlər:
| İmkan | Anonim funksiya | Ok funksiyası |
|---|---|---|
| Çox sətirli kod | Bəli | Xeyr |
return açar sözü |
Bəli (mütləq) | Xeyr (qeyri-müəyyən) |
use açar sözü |
Bəli (idxal üçün) | Xeyr (avtomatik) |
| Mürəkkəb məntiq | Bəli | Xeyr |
Onlar arasındakı seçim tapşırığın mürəkkəbliyindən və sintaksis üstünlüklərindən asılıdır. Sadə əməliyyatlar üçün, onların qısa olması səbəbindən ok funksiyalarını istifadə etmək daha əlverişlidir.