php无限极分类
Posted 6789
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php无限极分类相关的知识,希望对你有一定的参考价值。
1 $arr = array( 2 0=>array( 3 \'cid\'=>1, 4 \'pid\'=>0, 5 \'name\'=>\'亚洲\', 6 ), 7 1=>array( 8 \'cid\'=>2, 9 \'pid\'=>0, 10 \'name\'=>\'北美洲\', 11 ), 12 2=>array( 13 \'cid\'=>3, 14 \'pid\'=>1, 15 \'name\'=>\'中国\', 16 ), 17 3=>array( 18 \'cid\'=>4, 19 \'pid\'=>2, 20 \'name\'=>\'美国\', 21 ), 22 4=>array( 23 \'cid\'=>5, 24 \'pid\'=>3, 25 \'name\'=>\'北京\', 26 ), 27 5=>array( 28 \'cid\'=>6, 29 \'pid\'=>3, 30 \'name\'=>\'河北\', 31 ), 32 6=>array( 33 \'cid\'=>7, 34 \'pid\'=>5, 35 \'name\'=>\'东城区\', 36 ), 37 7=>array( 38 \'cid\'=>8, 39 \'pid\'=>5, 40 \'name\'=>\'海淀区\', 41 ), 42 );
1 private function GetTree($arr,$pid,$step){ 2 global $tree; 3 foreach($arr as $key=>$val) { 4 if($val[\'pid\'] == $pid) { 5 $flg = str_repeat(\'└―\',$step); 6 $val[\'name\'] = $flg.$val[\'name\']; 7 $tree[] = $val; 8 $this->GetTree($arr , $val[\'cid\'] ,$step+1); 9 } 10 } 11 return $tree; 12 }
然后我们只需要写一个调用的代码就好
$newarr = $this->GetTree($arr, 0, 0);
这样看上去是不是很简单?
以上是关于php无限极分类的主要内容,如果未能解决你的问题,请参考以下文章