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上传文件的相关问题