digui($i-1);            for($j=1;$j"/> digui($i-1);            for($j=1;$j">

 >  기사  >  백엔드 개발  >  PHP 재귀 함수 예제 분석

PHP 재귀 함수 예제 분석

小云云
小云云원래의
2018-03-06 11:38:521745검색

이 기사

   public function digui($i)
    {

        if($i=='1'){
            echo  "*" ;
            echo "<br>";
            return ;
        }else{
            $this->digui($i-1);
            for($j=1;$j<=$i;$j++){
                echo  "*" ;
            }
            echo "<br>";
        }
    }
 调用 $this->digui(3);
结果
*
**
***

  function digui2($n){
        echo $n." ";
        if($n>0){
            $this-> digui2($n-1);
        }else{
            echo "<-->";
        }
        echo $n." ";
    }

Call $this->digui2(3);

Result

3 2 1 0 71fb34173e4ee87dab1f85dc1c283a440 1 2 3

재귀 함수 실행 해부 예시(다른 사람에게서 다시 게시됨)

다음 코드를 보세요:

<?php
function one($num){
echo $num;
two($num-1);
echo $num;
}
function two($num){
echo $num;
three($num-1);
echo $num;
}
function three($num){
echo $num;
}
one(3);
?>

위 코드는 test() 함수를 분해합니다.
one(3) 함수를 실행할 때 test() 함수와 마찬가지로 먼저 3을 출력하고 그 다음 2를 호출합니다. (2) 함수,
다음 3개는 현재 출력되지 않았음을 주의하세요,
계속해서 2개 함수를 실행하고, 2개를 출력하고, 3개 함수를 호출하세요. 마찬가지로 시간이 없습니다. 다음 2개를 출력하고,
3개(1)를 실행하고, 1개를 다른 함수를 호출하지 않고 직접 출력합니다.
이때 two() 함수가 아직 실행되지 않았는지 궁금합니다. 그럼 둘 중 끝나지 않은 부분을 실행해 보세요. () 함수. two() 함수가 실행된 후, 즉 다음 2를 출력하고, one() 함수의 완료되지 않은 부분, 즉 다음 3을 출력합니다. 이때 모든 함수는 종료됩니다. 실행.
그러면 출력 결과는 다음과 같습니다.
3 2 1 2 3

관련 권장 사항:

php 재귀 함수에 대한 자세한 설명

php 재귀 함수 호출 설명

PHP를 구현하는 세 가지 방법 분석 재귀 함수

위 내용은 PHP 재귀 함수 예제 분석의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.