>  기사  >  백엔드 개발  >  php递归实现无限分类 php格式化数组

php递归实现无限分类 php格式化数组

WBOY
WBOY원래의
2016-07-25 08:54:11774검색
  1. //数据库我用的mysql PDO 但是整个思路又是一样的

  2. $conn=mysql_connect('localhost','root','123');
  3. if(mysql_errno()){
  4. printf('连接失败'.mysql_error());
  5. }
  6. mysql_select_db('edeng');
  7. mysql_set_charset('utf8');
  8. /*
  9. *递归函数
  10. *@param id 要查询fid=$id的所有子类 这里将$id的默认值为设为0 是因为我在数据库中将最顶层的类别的fid设置为0
  11. */
  12. function get_array($id=0){
  13. $sql="select id,fid,cname from e_cat where fid= $id";
  14. $result=mysql_query($sql);
  15. $arr=array();
  16. if($result && mysql_affected_rows()){
  17. while($rows=mysql_fetch_assoc($result)){
  18. $rows['child']=get_array($rows['id']);

  19. $arr[] = $rows;
  20. }
  21. return $arr;
  22. }
  23. }
  24. echo '
    ';
  25. $result = get_array();
  26. print_r($result);
  27. 函数首先查询出所有fid为0的类

  28. 通过while逐个循环进行回调查找fid为当前类的id的子类

复制代码


성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.