Существует следующая анонимная рекурсивная функция:
$f = function($n) use (&$f) {
return ($n == 1) ? 1 : $n * $f($n - 1);
};
echo $f(5); // 120
Пытаюсь перепрошить на версию 7.4, но выходит ошибка, подскажите пожалуйста, что я упускаю?
$f = fn($n) => ($n == 1) ? 1 : $n * $f($n - 1);
echo $f(5);
Примечание: Неопределенная переменная: f
Неустранимая ошибка: необработанная ошибка: имя функции должно быть строкой
use()
, чтобы вы могли ссылаться на внешнюю переменную$f
. - person Barmar   schedule 15.11.2019use()
нельзя будет использовать в новом синтаксисе? - person морфиновые облака   schedule 15.11.2019