Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Closure::getCurrent() pour atteindre la closure

By Tim Macdonald

<?php

    $fibonnacci = function (int $n, $previous2 = 0, $previous1 = 1) {
    if ($n <= 1) {
        return $previous2 + $previous1;
    }
    
    $closure = Closure::getCurrent();
    return $closure($n - 1, $previous1, $previous1 + $previous2);
};
print $fibonnacci(4);

J’étais content de voir PHP ajouter Closure::getCurrent().

Maintenant que je l’utilise, je ne peux m’empêcher de penser qu’on devrait ajouter un Closure::callCurrent(/* ... */).

Je ne veux pas affecter une variable, je n’ai pas besoin de l’objet en tant que tel. Invoquer le retour d’une fonction en ligne semble aussi inutilement lourd.

See Also

PHP Features

Last updated: 11 October 2026