为什么这样的数组不能使用无限分类
发布于:2022-01-17 09:50:54
#1 枫子
$$$$arr = array(
array(
'id'=>1,
'pid'=>'0',
),
array(
'id'=>11,
'pid'=>'1',
),
array(
'id'=>12,
'pid'=>'1',
),
);
$$$$tree = new Tree($$$$arr);
$$$$a = $$$$tree->leaf();
dump($$$$a);
Array
(
[0] => Array
(
[id] => 1
[pid] => 0
[child] => Array
(
[0] => Array
(
[id] => 11
[pid] => 1
)
[1] => Array
(
[id] => 12
[pid] => 1
)
)
)
)
2013-08-27 22:54:41
#2 枫子
$$$$arr = array(
array(
'id'=>7,
'pid'=>'1',
),
array(
'id'=>11,
'pid'=>'7',
),
array(
'id'=>12,
'pid'=>'7',
),
);
$$$$tree = new Tree($$$$arr);
$$$$a = $$$$tree->leaf();
dump($$$$a);
dump后为空
2013-08-27 22:57:41
#3 枫子
现在问题是一楼可以dump出树形结构,二楼不行。为什么呢?求JAKE大大及广大SP粉解答。谢谢。
2013-08-27 22:58:53
#4 jake
我的建议是你自己研究Tree这个类里面的代码,这里又没有Tree的代码,谁能猜到为什么呢
2013-08-28 08:12:54
#5 枫子
jake 发表于 2013-8-28 08:12
我的建议是你自己研究Tree这个类里面的代码,这里又没有Tree的代码,谁能猜到为什么呢 ...
无限分类使用的是
Kvoid所发的,地址是:
http://www.speedphp.com/forum.php?mod=viewthread&tid=1461
2013-08-28 11:52:16
#6 jake
把上面的代码copy到下面的,然后改几个数字,他们的差别就在几个数字?
2013-08-28 13:27:46
#7 枫子
jake 发表于 2013-8-28 13:27
把上面的代码copy到下面的,然后改几个数字,他们的差别就在几个数字?
是的,所以感觉很奇怪。
2013-08-28 13:32:49
#8 jake
枫子 发表于 2013-8-28 13:32
是的,所以感觉很奇怪。
只能说那个Tree应该是有bug。
2013-08-28 13:48:22
#9 jake
枫子 发表于 2013-8-28 13:32
是的,所以感觉很奇怪。
Tree那个类我先移回交流区吧
2013-08-28 13:49:24
#10 枫子
jake 发表于 2013-8-28 13:49
Tree那个类我先移回交流区吧
Jake 有好用的无限分类分享下吗?我试过坛里好几个无限分类都不行。
2013-08-28 14:07:56
#11 jake
枫子 发表于 2013-8-28 14:07
Jake 有好用的无限分类分享下吗?我试过坛里好几个无限分类都不行。
无限分类是一种类型的算法,没有具体的什么类的。那些所谓的类都是全部读出节点再排序,意义不大,和XML类差不多。
无限分类要解决的问题是多节点下递归性能问题,但是这些类都全部节点读出来,那就没法解决性能问题了。
2013-08-28 15:16:38
#12 枫子
jake 发表于 2013-8-28 15:16
无限分类是一种类型的算法,没有具体的什么类的。那些所谓的类都是全部读出节点再排序,意义不大,和XML ...
明白,谢谢 jake 大大。
2013-08-28 15:47:16