php可应用于面包屑导航的迭代寻找家谱树实现方法

来源:爱站网时间:2019-08-15编辑:网友分享
php是通过定义类来实现迭代器接口来构造迭代器,通过yield构造迭代器可以提高性能并节省系统开销,下面就跟着爱站技术频道小编的步伐来学习php可应用于面包屑导航的迭代寻找家谱树实现方法吧。

php是通过定义类来实现迭代器接口来构造迭代器,通过yield构造迭代器可以提高性能并节省系统开销,下面就跟着爱站技术频道小编的步伐来学习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 familytree($arr,$id){
 $list = array();
 while($id){
 $flag = false;
 foreach($arr as $v){
  if($v['id']==$id){
  array_unshift($list,$v['area']);
  $id = $v['pid'];
  $flag = true;
  }
 }
 if(!$flag){
  break;
 }
 }
 return $list;
}
print_r(familytree($area,113));
?>

上文是爱站技术频道小编为大家带来的php可应用于面包屑导航的迭代寻找家谱树实现方法,这样能够帮助我们在程序员的世界少走很多的弯路。

上一篇:PHP中开启gzip压缩的2种方法

下一篇:汇总php上传文件的相关问题

您可能感兴趣的文章

相关阅读

热门软件源码

最新软件源码下载