Maison  >  Article  >  développement back-end  >  Introduction au composant d'extension d'arbre de classification illimité PHP

Introduction au composant d'extension d'arbre de classification illimité PHP

不言
不言avant
2019-01-29 11:10:002767parcourir

Cet article vous présente une introduction au composant d'extension d'arbre de classification infinie PHP. Il a une certaine valeur de référence. Les amis dans le besoin peuvent s'y référer.

Schéma de l'arborescence du système PHP

Introduction au composant dextension darbre de classification illimité PHP

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

Installation

le compositeur nécessite un dendrogramme /dendrogram:v1.0

Configuration

Enregistrez d'abord le ServiceProvider dans l'application Laravel, ouvrez le fichier config/app.php et ajoutez un élément dans les fournisseurs :

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

Publiez ensuite le fichier de configuration du package d'extension, utilisez la commande suivante :

php artisan seller:publish

À ce moment , le dendrogramme sera généré dans le répertoire de configuration. Fichier de configuration .php

Introduction au composant dextension darbre de classification illimité PHP

Import de données (deux tables et trois fonctions personnalisées)

php artisan migrate
  • La structure de contiguïté est basée sur le nœud parent. L'ajout et la suppression de requêtes en chaîne sont faciles à interroger et peu pratiques

Introduction au composant dextension darbre de classification illimité PHP

  • imbriqué La structure se présente sous la forme d'inclusion de valeurs à gauche et à droite, ce qui rend l'ajout et la suppression peu pratiques, ce qui rend l'interrogation peu pratique

Description de l'image

Description de la méthode

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

Par exemple,

2870900524-5c4edc9634790_articlex (1).png

  • Vue générée par la structure de données de contiguïté

Description de l'image

  • Vue générée par la structure de données imbriquée

2683664840-5c4edc8c41318_articlex (1).png



Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer