chel7ch/nestedsets

嵌套集模型

dev-master 2022-05-19 14:33 UTC

This package is auto-updated.

Last update: 2024-09-19 19:56:04 UTC


README

用于在数据库中操作树的Laravel包。

理论: https://webscript.ru/stories/04/09/01/8197045

使用方法

每个节点有3个独特的索引:id, lk和rk。要开始操作树节点,我们学习节点的属性

$prop=array('id'=>5, 'lk'=>3, 'rk'=>8); 

或任何部分

$prop=array('lk'=>3);

$node=(new Node)->prepare($prop);

选择

我们节点参与的整个分支

$tree = new Categories();
$tree->getEntireBranch($node);

节点的祖先

$tree->getAncestors($node);

节点及其祖先

$tree->getAncestorNode($node);

节点的后代

$tree->getDescendant($node);

带有节点的后代

$tree->getDescendantNode($node);

整个树

$tree->getTree();

添加节点

仅子节点

$tree->createNode($parantNode, $nodeName);

重命名节点

$tree->renameNode($node, $newName)

删除带有后代的节点

$tree->deleteNode($node);

清除一切

$tree->cleanTree();

移动节点

$tree->moveNode($node, $newParent);

检查树的一致性

$check= new CheckOfTree(new Categories);
$check->inspect();