本文实例讲述了php实现递归与无限分类的方法,分享给大家供大家参考。具体实现方法如下:
<?php echo \"<pre>\"; $area = array( array(\'id\'=>1,\'area\'=>\'北京\',\'pid\'=>0), array(\'id\'=>2,\'area\'=>\'广西\',\'pid\'=>0), array(\'id\'=>3,\'area\'=>\'广东\',\'pid\'=>0), array(\'id\'=>4,\'area\'=>\'福建\',\'pid\'=>0), array(\'id\'=>11,\'area\'=>\'朝阳区\',\'pid\'=>1), array(\'id\'=>12,\'area\'=>\'海淀区\',\'pid\'=>1), array(\'id\'=>21,\'area\'=>\'南宁市\',\'pid\'=>2), array(\'id\'=>45,\'area\'=>\'福州市\',\'pid\'=>4), array(\'id\'=>113,\'area\'=>\'亚运村\',\'pid\'=>11), array(\'id\'=>115,\'area\'=>\'奥运村\',\'pid\'=>11), array(\'id\'=>234,\'area\'=>\'武鸣县\',\'pid\'=>21) ); function t($arr,$pid=0,$lev=0){ static $list = array(); foreach($arr as $v){ if($v[\'pid\']==$pid){ echo str_repeat(\" \",$lev).$v[\'area\'].\"<br />\"; //这里输出,是为了看效果 $list[] = $v; t($arr,$v[\'id\'],$lev+1); } } return $list; } $list = t($area); echo \"<hr >\"; print_r($list); ?>
希望本文所述对大家的php程序设计有所帮助。
本文地址:https://www.stayed.cn/item/8785
转载请注明出处。
本站部分内容来源于网络,如侵犯到您的权益,请 联系我