Sobes.tech
Junior — Middle

Կարող եք բացատրել, թե ինչ է փակումը և ինչպես է այն աշխատում PHP-ում։

sobes.tech AI

Պատասխան AI-ից

PHP-ում փակումը անանուն ֆունկցիա է, որը կարող է բռնել իր արտաքին տարածքից փոփոխականներ և օգտագործել դրանք ներսում, նույնիսկ այնուհետև, երբ արտաքին ֆունկցիան ավարտվի։ Սա թույլ է տալիս ստեղծել վիճակով պահպանվող ֆունկցիաներ:

Օրինակ՝

function counter() {
    $count = 0;
    return function() use (&$count) {
        $count++;
        return $count;
    };
}

$countFunc = counter();
echo $countFunc(); // 1
echo $countFunc(); // 2

Այստեղ անանուն ֆունկցիան բռնում է $count փոփոխականը հղումով և պահպանում նրա արժեքը կանչերի միջև։