Sobes.tech
Middle

PHP-də bağlama nədir?

sobes.tech Süni İntellekt

AI-dan cavab

Obyekt-funksiyası, yaradıldığı mühitdən dəyişənləri tutmaq qabiliyyətinə malikdir, hətta həmin mühitin icrası başa çatdıqdan sonra belə.

<?php
// $factor-u tutan bağlama
$multiplyBy = function ($factor) {
    return function ($number) use ($factor) {
        return $number * $factor;
    };
};

$double = $multiplyBy(2);
$triple = $multiplyBy(3);

echo $double(10); // Çıxış: 20
echo $triple(10); // Çıxış: 30

Əsas xüsusiyyətlər:

  • Closure sinfinin nümunələridir.
  • use açar sözü ilə valideyn mühitindən dəyişənləri miras ala bilərlər.
  • Miras alınan dəyişənlər dəyər ilə miras alınır, əgər açıq şəkildə referans ilə miras alınması göstərilməyibsə (use (&$variable)).
  • Adətən, "yaradılma kontekstini" yadda saxlayan anonim funksiyalar yaratmaq üçün istifadə olunur.