Middle
Čo je uzáver v PHP?
sobes.tech AI
Odpoveď od AI
Objekt-funkcia s možnosťou zachytiť premenné z okolia, v ktorom bola vytvorená, aj po ukončení tohto okolia.
<?php
// Uzávierka, ktorá zachytí $factor
$multiplyBy = function ($factor) {
return function ($number) use ($factor) {
return $number * $factor;
};
};
$double = $multiplyBy(2);
$triple = $multiplyBy(3);
echo $double(10); // Výstup: 20
echo $triple(10); // Výstup: 30
Hlavné vlastnosti:
- Sú inštanciami triedy
Closure. - Môžu dediť premenné z nadriadeného prostredia pomocou kľúčového slova
use. - Dedičné premenné sú dediťované hodnotou, ak nie je výslovne uvedené dedenie odkazom (
use (&$premenná)). - Často sa používajú na vytváranie anonymných funkcií, ktoré "pamätajú" kontext svojho vzniku.