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 중국어 웹사이트의 기타 관련 기사를 참조하세요!