PHP 函数可以递归匿名吗?
在 PHP 中,创建递归和匿名函数的可能性让程序员感到困惑。这个问题的出现是由于函数名称通常用于递归。然而,正如提供的示例所示,递归匿名函数确实可以在 PHP 中实现。
提供的代码尝试在匿名函数中使用递归来计算数字的阶乘,但在传入时面临挑战函数名称。为了解决这个问题,传递函数作为引用至关重要。通过在 use 语句中的 $factorial 之前添加与号 (&),函数本身在匿名函数中变得可用。
以下是修改后的代码:
<code class="php">$factorial = function( $n ) use ( &$factorial ) { if( $n == 1 ) return 1; return $factorial( $n - 1 ) * $n; }; print $factorial( 5 );</code>
通过此修改,函数 $factorial 现在可以以递归方式引用自身,从而允许所需的阶乘计算正确运行。
以上是## PHP 函数可以递归匿名吗? 深入探讨函数引用和递归。的详细内容。更多信息请关注PHP中文网其他相关文章!