文章教程

4.3递归函数

9/17/2020 9:31:19 PM 人评论 次浏览

4.3 递归函数

函数在定义完成后,会保存在文件中等待调用。在其他脚本里才能调用已经定义的函数。但有些情况下,函数会调用其本身参与运算,这类函数称为递归函数。代码如4-2演示了使用递归函数显示10个表格,每一个表格拥有10个单元格。

代码4-2 递归函数演示4-2.php


     01 <?php
     02 function draw($total,$line=1,$row=1,$result="<table border=2><tr>"){
     03         if($line>$total){
     04                 return;
     05         }else{
     06                 $result .= "<td>$line</td>";
     07                 $line++;
     08                 $row++;
     09                 //
调用函数本身,实现递归
     10                 draw($total,$line,$row,&$result);//
此行使用了引用符号
     11         }
     12         echo $result .= "</tr></table>";
     13 }
     14 draw(10);
     15 ?>

【代码解析】代码使用了引用符号,在运行这段代码时,去掉引用符号,请读者观察运行结果的变化。正确使用递归函数,可以使许多工作变得简单。最典型的例子就是建立一个无限分级的菜单。上述代码的运行结果如图4-2所示。

图4-2 递归函数运行结果

教程类别