搜索
为什么我显示的是未定义数组索引
繁华
繁华 2018-08-10 17:24:38
[PHP讨论组]

如下3.png2.png

繁华
繁华

全部回复(6)
手机用户1617331941

中文版

繁华

找到错误了,add方法里这个$menus要改成$results

错误的  $this->assign('menus',$menus);

正确的 $this->assign('menus',$results);

繁华
<?php
/**
	角色管理
*/
namespace app\admins\controller;
use app\admins\controller\BaseAdmin;
class Roles extends BaseAdmin
{	
	//角色列表
	public function index(){
		$data['roles']=$this->db->table('admin_groups')->lists();
		$this->assign('data',$data);
		return $this->fetch();
	}

	//角色添加
	public function add(){
		$menus_list = $this->db->table('admin_menus')->where(array('status'=>0))->cates('mid');
		$menus = $this->gettreeitems($menus_list);
		$results = array();
		foreach ($menus as $value) {
			$value['children'] = isset($value['children'])?$this->formatMenus($value['children']):false;
			$results[] = $value;
		}
		var_dump($results);
		$this->assign('menus',$menus);
		return $this->fetch();
	}

	private function gettreeitems($items){
		$tree = array();
		foreach ($items as $item){ 
			if(isset($items[$item['pid']])){
				$items[$item['pid']]['children'][] = &$items[$item['mid']];
			}
			else{
				$tree[] = &$items[$item['mid']];
			}
		}
		return $tree;
	}

	private function formatMenus($items,&$res=array()){
		foreach ($items as $item) {
			if(!isset($item['children'])){
				$res[] = $item;
			}else{
				$tem = $item['children'];
				unset($item['children']);
				$res[] = $item;
				$this->formatMenus($tem,$res);
			}
		}
		return $res;
	}
}


繁华
array (size=4)
  0 => 
    array (size=9)
      'mid' => int 1
      'pid' => int 0
      'ord' => int 0
      'title' => string '管理员管理' (length=15)
      'controller' => string '' (length=0)
      'method' => string '' (length=0)
      'ishidden' => int 0
      'status' => int 0
      'children' => 
        array (size=4)
          0 => 
            array (size=8)
              'mid' => int 4
              'pid' => int 1
              'ord' => int 0
              'title' => string '管理员列表' (length=15)
              'controller' => string 'Admin' (length=5)
              'method' => string 'index' (length=5)
              'ishidden' => int 0
              'status' => int 0
          1 => 
            array (size=8)
              'mid' => int 17
              'pid' => int 4
              'ord' => int 0
              'title' => string '角色列表' (length=12)
              'controller' => string 'Admin' (length=5)
              'method' => string 'test' (length=4)
              'ishidden' => int 0
              'status' => int 0
          2 => 
            array (size=8)
              'mid' => int 5
              'pid' => int 1
              'ord' => int 0
              'title' => string '管理员添加' (length=15)
              'controller' => string 'Admin' (length=5)
              'method' => string 'add' (length=3)
              'ishidden' => int 1
              'status' => int 0
          3 => 
            array (size=8)
              'mid' => int 6
              'pid' => int 1
              'ord' => int 0
              'title' => string '管理员保存' (length=15)
              'controller' => string 'Admin' (length=5)
              'method' => string 'save' (length=4)
              'ishidden' => int 1
              'status' => int 0
  1 => 
    array (size=9)
      'mid' => int 2
      'pid' => int 0
      'ord' => int 0
      'title' => string '权限管理' (length=12)
      'controller' => string '' (length=0)
      'method' => string '' (length=0)
      'ishidden' => int 0
      'status' => int 0
      'children' => boolean false
  2 => 
    array (size=9)
      'mid' => int 3
      'pid' => int 0
      'ord' => int 0
      'title' => string '系统设置' (length=12)
      'controller' => string '' (length=0)
      'method' => string '' (length=0)
      'ishidden' => int 0
      'status' => int 0
      'children' => boolean false
  3 => 
    array (size=9)
      'mid' => int 11
      'pid' => int 0
      'ord' => int 0
      'title' => string '文章管理' (length=12)
      'controller' => string '' (length=0)
      'method' => string '' (length=0)
      'ishidden' => int 0
      'status' => int 0
      'children' => 
        array (size=1)
          0 => 
            array (size=8)
              'mid' => int 16
              'pid' => int 11
              'ord' => int 0
              'title' => string '文章列表' (length=12)
              'controller' => string 'Article' (length=7)
              'method' => string 'index' (length=5)
              'ishidden' => int 0
              'status' => int 0

这是正常显示的内容

Summer

先看看有没有这些数据

  • 回复 都有啊
    繁华 作者 2018-08-10 19:28:54
  • 回复 谢了,找到错误了
    繁华 作者 2018-08-10 19:32:52
繁华

如下

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号