>백엔드 개발 >PHP 튜토리얼 >PHP 재귀는 문제를 반환할 수 없습니다. 재귀를 작성하는 올바른 방법입니다.

PHP 재귀는 문제를 반환할 수 없습니다. 재귀를 작성하는 올바른 방법입니다.

不言
不言원래의
2018-04-20 11:36:281561검색

이 글은 PHP 재귀가 반환할 수 없는 문제를 소개합니다. 재귀를 작성하는 올바른 방법에는 특정 참조 값이 있습니다. 이제 필요한 친구들이 참조할 수 있습니다.

기존의 작성 방법

function digui($tiaojian){
    if ($tiaojian) {        return  $data;
    }    else{        return digui();
    }
}


참고: 조건 이것이 true가 아닌 경우 재귀 함수를 반환해야 합니다. 그렇지 않으면 재귀가 출력용일 경우 정상적으로 반환할 수 없습니다

.

function digui($tiaojian){
    if ($tiaojian) {        echo $data;
    }    else{
        digui();
    }
}

Quote writing

function digui($tiaojian,&$result){
    if ($tiaojian) {        $result=$data;
    }    else{
        digui();
    }
}

정적 변수

function digui(){
    static $count=0;    echo $count;    $count++;
}

digui();
digui();
digui();
digui();
digui();

출력 결과는 다음과 같습니다. 0 1 2 3 4
참고: 정적 변수 방법은 주의해서 사용해야 합니다. 이 메서드가 호출될 때마다 원래 이 변수를 정의한 원래 메서드가 작동되기 때문입니다.

설정되지 않은 경우에도 정적 변수를 삭제할 수 없습니다.

function digui(){
    static $count=0;    echo $count;    $count++;    unset($count);
}

digui();
digui();
digui();
digui();
digui();

이 코드는 여전히 0 1 2 3을 출력합니다.

관련 권장 사항:

php 재귀 함수 예제 분석


위 내용은 PHP 재귀는 문제를 반환할 수 없습니다. 재귀를 작성하는 올바른 방법입니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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