ホームページ >バックエンド開発 >PHPチュートリアル >## PHP 関数は再帰的に匿名化できますか? 関数参照と再帰について詳しく説明します。
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 中国語 Web サイトの他の関連記事を参照してください。