<?php
//无限极分类及子孙树
$area = array(
0=>array('cat_id'=>10,'cat_name'=>'口子乡','parent_id'=>9),
1=>array('cat_id'=>2,'cat_name'=>'朝阳区','parent_id'=>1),
2=>array('cat_id'=>3,'cat_name'=>'海淀区','parent_id'=>1),
3=>array('cat_id'=>4,'cat_name'=>'河北省','parent_id'=>0),
4=>array('cat_id'=>5,'cat_name'=>'邯郸市','parent_id'=>4),
5=>array('cat_id'=>6,'cat_name'=>'馆陶县','parent_id'=>5),
6=>array('cat_id'=>7,'cat_name'=>'安徽省','parent_id'=>0),
7=>array('cat_id'=>8,'cat_name'=>'淮北市','parent_id'=>7),
8=>array('cat_id'=>9,'cat_name'=>'濉溪县','parent_id'=>8),
9=>array('cat_id'=>1,'cat_name'=>'北京市','parent_id'=>0)
);
//static 在函数可以修改一个变量 是此变量变成静态变量 此变量之初始化一次以后所有同名函数的调用直接使用此变量
//$list=array();
function tree($arr,$parent_id=0)
{
//global $list;
static $list=array();
foreach($arr as $k=>$v)
{
if($v['parent_id']==$parent_id){
$list[]=$v;
tree($arr,$v['cat_id']);
}
}
return $list;
}
//print_r(tree($area,0));
//例子给定的馆陶县 找出河北省
function find($arr,$parent_id){
static $list=array();
foreach($arr as $k=>$v){
if($v['cat_id']==$parent_id){
$list[]=$v;
if($v['parent_id']!=0){
find($arr,$v['parent_id']);
}else{
return false;
}
}
}
return $list;
}
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。