Рекурсивная анонимная (лямбда) функция
Пример ниже показывает как можно создать рекурсивное замыкание. Другими словами как можно создать анонимную функцию и использовать её рекурсивно саму в себе.
Все это может показаться бредом, но как ни странно такие функции мне иногда нужны из-за удобства. Поэтому хорошо бы знать, что такое можно делать в PHP.
// считаем факториал $fact__fn = function( $n ) use ( & $fact__fn ){ if( $n == 1 ) return 1; return $fact__fn( $n-1 ) * $n; }; echo $fact(5); //= 120
—
Эта заметка встроена в: 20+ неожиданностей в PHP, о которых знают не все