• 技术文章 >后端开发 >php教程

    php递归,该如何处理

    2016-06-13 12:53:34原创374
    php递归
    有一个数据表,结构如下:
    id classid zengclassid createdate

    需要递归查出classid=$id的zengclassid,还得判断zengclassid如果也有赠送的课程时,需要把这条记录也查出来,
    例如:
    1 470 445 2010-01-01 11:11:11
    2 470 448 2010-01-01 11:11:11
    3 448 457 2010-01-01 11:11:11
    4 445 490 2010-01-01 11:11:11

    如果查找id为470的结果,那么需要查出:445,448,457,490;

    我的代码递归得有问题,请大虾们赐教一下
    function getVideo_zs($classid,$arr){
    global $dsql;
    $sql = "SELECT zengclassid FROM course WHERE classid=".$classid;
    $dsql->Execute('mme',$sql);
    while($rs=$dsql->getArray('mme')){
    $arr[] = $rs['zengclassid'];
    if(!empty($rs['zengclassid'])){
    $arr = getVideo_zs($rs['zengclassid'],$arr);
    }
    }

    return $arr;
    }
    $zs_list = array();
    $zs_zrr = getVideo_zs(470,$zs_list);


    ------解决方案--------------------
    $arr[] = $rs['zengclassid'];//累积结果
    if(!empty($rs['zengclassid'])){
    $arr = getVideo_zs($rs['zengclassid'],$arr);//怎么递归一下就覆盖呢?

    另外 $dsql->Execute('mme',$sql); 后,资源在 $dsql 内
    请确认结果集不会被覆盖

    php入门到就业线上直播课:查看学习

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。

    前端(VUE)零基础到就业课程:点击学习

    清晰的学习路线+老师随时辅导答疑

    自己动手写 PHP MVC 框架:点击学习

    快速了解MVC架构、了解框架底层运行原理

    上一篇: 施用php伪造IP层,求思路 下一篇:自己动手写 PHP MVC 框架(40节精讲/巨细/新人进阶必看)

    相关文章推荐

    • ❤️‍🔥共22门课程,总价3725元,会员免费学• ❤️‍🔥接口自动化测试不想写代码?• 4.与数据库的连接_PHP• 搜索引擎技术核心揭密• 一个mysql查询的有关问题,马上就能结贴• thinkphp做的网站在别人电脑上不能找到,该怎么解决• 请教QQ互联的代码是如何写的?
    1/1

    PHP中文网