首页后端开发PHP如何用PHP实现无极分类菜单效果

如何用PHP实现无极分类菜单效果

时间2024-03-24 21:36:03发布访客分类PHP浏览1090
导读:这篇文章主要给大家介绍“如何用PHP实现无极分类菜单效果”的相关知识,下文通过实际案例向大家展示操作过程,内容简单清晰,易于学习,有这方面学习需要的朋友可以参考,希望这篇“如何用PHP实现无极分类菜单效果”文章能对大家有所帮助。 效果图...
这篇文章主要给大家介绍“如何用PHP实现无极分类菜单效果”的相关知识,下文通过实际案例向大家展示操作过程,内容简单清晰,易于学习,有这方面学习需要的朋友可以参考,希望这篇“如何用PHP实现无极分类菜单效果”文章能对大家有所帮助。

效果图如下

controller控制器代码:

  /**
  * 菜单列表
  */
  public function index(){
     
		$menuList= Db::name('menu')->
    order('sort,id')->
    select();
    
		//递归排序
		$menuList= $this->
    sort($menuList);
    
		$this->
    assign('menuList',$menuList);
    	
    return view();
	
  }

	protected function sort($data,$pid=0,$level=0){
    
		//此处数据必须是静态数组,不然递归的时候每次都会声明一个新的数组
		static $arr = array();
    
    foreach ($data as $key=>
$value){

      if($value['pid'] == $pid){
    
        $value["level"]=$level;
    
        $arr[]=$value;
    
				//unset()用于销毁指定的变量
				unset($this->
    data[$key]);
    
        $this->
    sort($data,$value['id'],$level+1);

      }

    }
    
    return $arr;

  }
    

html模板代码:

tbody>

{
volist name="menuList" id="vo" key="index"}
    
  tr>
    
    td class="text-left">
    
    ?php 
      if($vo['pid']!=0) 
        echo str_repeat("&
    nbsp;
    ",$vo["level"]*3).'├╌ ' 
        /*str_repeat()函数把字符串重复指定的次数。*/ 
    ?>

    {
$vo.name}
    
    /td>
    						
  /tr>

{
/volist}
    
/tbody>
    

通过以上内容的阐述,相信大家对“如何用PHP实现无极分类菜单效果”已经有了进一步的了解,更多相关的问题,欢迎关注网络或到官网咨询客服。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: 如何用PHP实现无极分类菜单效果
本文地址: https://pptw.com/jishu/652333.html
如何利用PHP获取某一目录下的所有文件 Java的Prime算法的理解和实现是怎样?

游客 回复需填写必要信息