php无限分类树扩展组件

PHP系统树图

github地址

dendrogramLaravelPHP
v1.05.*>=5.6.4

安装

composer require dendrogram/dendrogram:v1.0

配置

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

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

然后发布拓展包的配置文件,使用如下命令:

php artisan vendor:publish

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

《php无限分类树扩展组件》

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

php artisan migrate

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

《php无限分类树扩展组件》

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

图片描述

方法说明

调用构造参数方法说明方法参数返回备注
(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多维数组结构

举个栗子

《php无限分类树扩展组件》

  • adjacency数据结构生成的视图

图片描述

  • nested数据结构生成的视图

《php无限分类树扩展组件》

    原文作者:ydtg1993
    原文地址: https://segmentfault.com/a/1190000018047651
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞