Sobes.tech
Junior

Mi az az anonim függvény?

sobes.tech MI

Válasz az MI-től

Névtelen függvény (vagy Closure) egy név nélküli függvény. Tárolható változóban, és átadható argumentumként más függvényeknek.

Fő jellemzők:

  • Név nélküli.
  • Egy változóhoz rendelhető.
  • Átadható paraméterként egy másik függvényhez (callback).
  • Használhat változókat a szülő környezetből a use konstrukcióval.

Használati példa:

<?php
// Név nélküli függvény hozzárendelése változóhoz
$greet = function($name)
{
    printf("Szia, %s!\n", $name);
};

$greet('Világ'); // Név nélküli függvény hívása

// Callbackként való használat
$numbers = [1, 2, 3, 4, 5];
$doubled = array_map(function($n) {
    return $n * 2;
}, $numbers);

print_r($doubled);

// Szülő környezet változóinak használata a `use`-val
$message = 'Szia';
$example = function () use ($message) {
    echo $message;
};
$example();

Névtelen függvények előnyei:

  • Rövid, egyszer használatos függvényekhez ideális.
  • Gyakran használják magasabb rendű függvényekkel (pl. array_map, usort).
  • Lehetővé teszik lezárások (closures) létrehozását.

Hátrányok:

  • Kevésbé olvasható összetettebb függvények esetén.
  • Hibakeresés kicsit nehezebb lehet név hiánya miatt.