递归其实就是"一个函数的自调用".
在这个"自调用"的过程中,必须要有一个变化的"参数",当这个"参数"达到你的期望值的时候,终止该"自调用"过程.
例如在此多级分类中,我们想得到"落地扇"的最上级分类"家用电器"的id,就可以应用到递归思想,不断向上追溯上级分类,直到期望的结果出现,即找到第一级分类
以此为例子编写递归程序:
$myID=getTopID('43'); function getTopID($id) { $query= mysql_query("select * from cate where id='".$id."'"); $Rs = mysql_fetch_array($query); $topID=$Rs['id'];/////先赋值 if($Rs['parentid']>0) { ////判断是否己是顶级分类,因为parentid等于0才是第一级分类,所以没达到条件的话,再调用函数自身,往上再查找 $topID = getTopID($Rs['parentid']);///根据设计时的思路,用父级的id作为子级的parentid查找 } return $topID;///返回顶级分类的id } 这便是递归思想的简单应用了.