实例助你理解php递归函数原理及调用方法.pdf
还剩
6页未读,
继续阅读
下载文档到电脑,马上远离加班熬夜!
亲,喜欢就下载吧,价低环保!
内容要点:
如果要输出json格式的数据,则可使?:echo json_encode($list); W3Cschool(www.w3cschool.cn)最?的技术知识分享与学习平台此篇内容来?于w3cschool.cn?站?户上传并发布。效果如图:接着我们来看返回数组格式的函数,?样要使?递归:function get_array($id=0){ $sql = "select id,title from class where pid= $id"; $result = mysql_query($sql);//查询?类 $arr = array(); if($result && mysql_affected_rows()){//如果有?类 while($rows=mysql_fetch_assoc($result)){ //循环记录集 $rows['list'] = get_array($rows['id']); //调?函数,传?参数,继续查询下级 $arr[] = $rows; //组合数组 } return $arr; } } 函数get_array()返回了数组,这是我们期待的,所以推荐使?get_array()得到数组,这样?来,我们可以对数组进?任意操作,?如我们可以将数组转换成json格式的数据传给前端页?,前端页?可以通过解析json数据灵活展?分类信息。?如树形结构的分类列表,下拉分类列表等。include_once('connect.php'); //连接数据库 $list = get_array(0); //调?函数 print_r($list); //输出数组 输出效果:2、PHP根据不同的需求,我们提供两种不同格式的?定义函数,?种是返回字符串,?种是返回数组,两种函数都使?了递归?法。先看返回字符串格式的函数:function get_str($id = 0) { global $str; $sql = "select id,title from class where pid= $id"; $result = mysql_query($sql);//查询pid的?类的分类 if($result && mysql_affected_rows()){//如果有?类 $str .= ''; while ($row = mysql_fetch_array($result)) { //循环记录集 $str .= "" . $row['id'] . "--" . $row['title'] . ""; //构建字符串 get_str($row['id']); //调?get_str(),将记录集中的id参数传?函数中,继续查询下级 } $str .= ''; } return $str; } 以上函数get_str()通过递归,不断查询下级分类,并最终返回字符串,?家可以根据项?需求修改其中的str,最终?成?个?限分级列表:include_once('connect.php'); //连接数据库,connect.php?件??写?个啊 echo get_str(0); //输出?限级分类 }$arr = array(array("","",array("",array(""))),"","","");$arr3 = arrContentReplact($arr);echo "";print_r($arr3);echo "";?>PHP递归实现?限级分类在?些复杂的系统中,要求对信息栏?进??限级的分类,以增强系统的灵活性。那么PHP是如何实现?限级分类的呢?下?介绍?下使?递归算法并结合mysql数据表实现?限级分类的?法。1、Mysql?先我们准备?张数据表class,记录商品分类信息。表中有三个字段,id:分类编号,主键?
发表评论
暂无评论,赶快抢占沙发吧。