Nutzung rekursiver PHP-Funktionen
Eine rekursive Funktion ist eine selbstaufrufende Funktion, die eine Selbstoptimierung direkt oder indirekt im Funktionskörper durchführt , muss aber festgelegt werden. Wenn die Bedingung erfüllt ist, wird die Funktion selbst aufgerufen. Wenn sie nicht erfüllt ist, wird die Selbstoptimierung dieser Funktion beendet und die Steuerung des Prozesses wird an die obere Ebene zurückgegeben Funktion zur Ausführung.
Codebeispiel
<?php //声明一个函数,用于测试递归 function test($n){ echo $n." "; //在函数开始输出参数的值 if($n>0){ //判断参数是否大于0 test($n-1); //如果参数大于0则调用自己,并将参数减1后再次传入 }else{ //判断参数是不大于0 echo "<--------> "; } echo $n." "; } test(10); //调用test函数将整数10传给参数 ?>
Denken Sie zunächst darüber nach: Was ist die Endausgabe dieses Beispiels?
Okay, schauen wir uns das Ausgabeergebnis dieser Funktion an:
10 9 8 7 6 5 4 3 2 1 0 <--> 0 1 2 3 4 5 6 7 8 9 10
Wie wäre es, wenn ich mich frage, ob dieses Ergebnis das gleiche ist wie erwartet?
Schritterklärung
Der erste Schritt besteht darin, test(10) auszuführen, 10 wiederzugeben und dann, weil 10>0, test( auszuführen 9) Es gibt immer noch Echo 10, das noch nicht ausgeführt werden konnte.
Der zweite Schritt besteht darin, test(9) auszuführen, echo 9 und dann, da 9>0, test(8) auszuführen , es gibt immer noch Echo, das keine Zeit hatte, 9 auszuführen
Der dritte Schritt besteht darin, Test (8) auszuführen, Echo 8 und dann, weil 8>0, Test (7) auszuführen echo 8, das noch nicht ausgeführt werden konnte.
Der vierte Schritt Schritt 1: Führen Sie test(7) aus, echo 7 und führen Sie dann test(6) aus, da 7>0 auch echo 7 enthält wurde nicht rechtzeitig ausgeführt.
Schritt 5, Test (6) ausführen, Echo 6. Da 6>0 ist, wird auch Test (5) ausgeführt ausgeführt.
.....
Schritt 10, test(0) ausführen, Echo 0. Zu diesem Zeitpunkt ist die Bedingung 0>0 nicht erfüllt wird nicht mehr ausgeführt, sondern echo „<-->“, und das folgende echo 0
10 9 8 7 6 5 4 3 2 1 0 <--> 0 1 2 3 4 5 6 7 8 9 10
Empfohlenes Tutorial: „PHP Tutorial“
Das obige ist der detaillierte Inhalt vonVerwendung rekursiver PHP-Funktionen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!