Beispiel #1
0
require_once($project_dir . '/setup.php');

require_once(LIMB_DIR . '/class/core/tree/drivers/NestedSetsTree.class.php');
require_once(LIMB_DIR . '/class/core/tree/MaterializedPathTree.class.php');

$db = DbFactory :: instance();
$db->sqlDelete($mp_table);

$ns = new NestedSetsTree();
$ns->setNodeTable($ns_table);
$mp = new MaterializedPathTree();
$mp->setNodeTable($mp_table);

$root_ns_nodes = $ns->getRootNodes();
$mp->setDumbMode();

echo 'total roots: ' . sizeof($root_ns_nodes) . "\n";

foreach($root_ns_nodes as $root_node)
{
  unset($root_node['l']);
  unset($root_node['r']);
  unset($root_node['ordr']);
  $mp->createRootNode($root_node);

  $sub_branch = $ns->getSubBranch($root_node['id'], -1);

  $branch_size = sizeof($sub_branch);
  echo 'total branches in current root: ' . $branch_size . "\n";