Laravel package for working with trees in databases.
Theory: https://webscript.ru/stories/04/09/01/8197045
Each node has 3 unique indexes: id , lk and rk. To start manipulating the nodes of the tree, we learn the attributes of the node:
$prop=array('id'=>5, 'lk'=>3, 'rk'=>8);
or any part of:
$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();