什么是递归
程序调用自身的编程技巧称为递归( recursion)。递归做为一种算法在程序设计语言中广泛应用。 一个过程或函数在其定义或说明中有直接或间接调用自身的一种方法,它通常把一个大型复杂的问题层层转化为一个与原问题相似的规模较小的问题来求解,递归策略只需少量的程序就可描述出解题过程所需要的多次重复计算,大大地减少了程序的代码量。递归的能力在于用有限的语句来定义对象的无限集合。一般来说,递归需要有边界条件、递归前进段和递归返回段。当边界条件不满足时,递归前进;当边界条件满足时,递归返回。
下面的实例是php利用递归列出所有文件和目录
<?php function tree($directory) { $mydir=dir($directory); echo "<ul> "; while($file=$mydir->read()){ if((is_dir("$directory/$file")) AND ($file!=".") AND ($file!="..")) {echo "<li><font color="#ff00cc"><b>$file</b></font></li> "; tree("$directory/$file"); } else echo "<li>$file</li> "; } echo "</ul> "; $mydir->close(); } //start the program echo "<h2>目录为粉红色</h2> "; tree("."); ?>
以上是php利用递归列出所有文件和目录的详细内容。更多信息请关注PHP中文网其他相关文章!