Sobes.tech
Middle

PHPдеги жабуу эмне?

sobes.tech AI

AIден жооп

Объект-функция, ал өзүнүн түзүлгөн чөйрөсүндөгү өзгөрмөлөрдү улап, анын иши аяктагандан кийин да сактап калуу мүмкүнчүлүгүнө ээ.

<?php
// $factor улавдаган жабуу
$multiplyBy = function ($factor) {
    return function ($number) use ($factor) {
        return $number * $factor;
    };
};

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

echo $double(10); // Чыгуу: 20
echo $triple(10); // Чыгуу: 30

Негизги өзгөчөлүктөрү:

  • Closure классынын мисалдары.
  • use ачкыч сөзү аркылуу ата-энесинин чөйрөсүнөн өзгөрмөлөрдү мурас кылып алса болот.
  • Мурас кылынган өзгөрмөлөр баа менен мурас кылынат, эгер так көрсөтүлбөсө (use (&$өзгөрмө)).
  • Жалпысынан, анонимдүү функцияларды түзүү үчүн колдонулат, алар "өздөрүнүн түзүлгөн контекстин" эсинде сактайт.