php无限分类树

PHP系统树图

github地址php

dendrogram Laravel PHP
v1.0 5.* >=5.6.4
 

安装

composer require dendrogram/dendrogram:v1.0
 

配置

首先往Laravel应用中注册ServiceProvider,打开文件config/app.php,在providers中添加一项:css

'providers' => [
    DenDroGram\DendrogramServiceProvider::class
]

而后发布拓展包的配置文件,使用以下命令:html

php artisan vendor:publish

此时config目录下会生成dendrogram.php配置文件node

 

 

数据导入(两表三个自定义函数)

php artisan migrate

adjacency结构 以父节点为基准的链式查询 增删容易 查询不便laravel

 

nested结构 以左右值包容形式 增删不便 查询容易git

 

方法说明

调用 构造参数 方法说明 方法参数 返回 备注
(new DenDroGram(AdjacencyList::class))->buildTree($node_id,['name']) adjacency数据格式 adjacency格式数据生成目录式结构树 根节点id , 每一个节点显示信息 返回html文本string 视图的相关在dendrogram.php中配置 如操做节点方法的路由
(new DenDroGram(AdjacencyList::class))->operateNode($action,$data) adjacency数据格式 adjacency格式数据的节点操做 action增删改标识 , data节点详情数据 返回boolean 注意视图与之对应的数据结构AdjacencyList::class
(new DenDroGram(AdjacencyList::class))->getTreeData($node_id); adjacency数据格式 adjacency数据构形成多维数组 根节点id 返回array 多维数组结构
(new DenDroGram(NestedSet::class))->buildTree($node_id,['name']) NestedSet数据格式 NestedSet格式数据生成根茎式结构树 根节点id , 每一个节点显示信息 返回html文本string 视图的相关在dendrogram.php中配置 如操做节点方法的路由
(new DenDroGram(NestedSet::class))->operateNode($action,$data) NestedSet数据格式 NestedSet格式数据的节点操做 action增删改标识 , data节点详情数据 返回boolean 注意视图与之对应的数据结构NestedSet::class
(new DenDroGram(NestedSet::class))->getTreeData($node_id); NestedSet数据格式 NestedSet数据构形成多维数组 根节点id 返回array 多维数组结构
 

举个栗子

adjacency数据结构生成的视图github

nested数据结构生成的视图数组

 

 

相关文章
相关标签/搜索