PHP中递归函数返回值使用介绍(ecshop无限分类)
在 ecshop 二次开发中做产品分类索引时,要根据分类 id 取得所属*分类 id 。第一个反应就是用递归递出来,于是写了递归函数如下:
代码如下 | 复制代码 |
function getCatTopId($cat_id) $res = $GLOBALS['db']->getAll($sql); if ($res[0]['parent_id'] > 0)
|
一测试程序,没有得到返回值?检查了很久都没有发现错误,看来脑壳断路了。今天问水神(一好心网友)时,他帮我解答出来了,修改如下:
代码如下 | 复制代码 |
function getCatTopId($cat_id) $sql = 'SELECT cat_id, parent_id' $res = $GLOBALS['db']->getAll($sql); if ($res[0]['parent_id'] > 0)
|
函数写在内部,就算返回了,也只是返回到内部的那个函数的位置,所以外面还有一层主函数,必须再 return 一下
上一篇: php读取文件内容的三种方式(转),
下一篇: 第一章 三/3节 PHP的语法与数据类型