Php 如何合并Laravel';将Baum层次树合并为一棵树?
我正在使用Laravel5.1和包在我的类别模型上实现嵌套集 我有一个类别的集合,对于每个类别,我都会得到它们的祖先,如下所示:Php 如何合并Laravel';将Baum层次树合并为一棵树?,php,recursion,laravel-5,tree,Php,Recursion,Laravel 5,Tree,我正在使用Laravel5.1和包在我的类别模型上实现嵌套集 我有一个类别的集合,对于每个类别,我都会得到它们的祖先,如下所示: $category->getAncestorsAndSelf()->toHierarchy(); 例如,假设我有4个类别:类别C,类别D,类别E和类别F。每棵树都是这样的: $category->getAncestorsAndSelf()->toHierarchy(); A类 B类 C类 A类 B类 D类 A类 B类
$category->getAncestorsAndSelf()->toHierarchy();
例如,假设我有4个类别:类别C
,类别D
,类别E
和类别F
。每棵树都是这样的:
$category->getAncestorsAndSelf()->toHierarchy();
- A类
- B类
- C类
- B类
- A类
- B类
- D类
- B类
- A类
- B类
- C类
- E类
- C类
- B类
- A类
- F类
$category->getAncestorsAndSelf()->toHierarchy();
- A类
- B类
- C类
- E类
- D类
- C类
- F类
- B类
- 获取层次结构中涉及的所有类别
- 消除重复
- 使用
Baum\Extensions\Eloquent\Collection创建层次结构
使用Baum\Extensions\Eloquent\Collection作为BaumCollection;
// ...
$categoriesandcestors=$categority
->平面图(功能($cat){
返回$cat->getAncestorsAndSelf();
})
->uniqueStrict(函数($cat){
返回$cat->id;
});
$result=BaumCollection::make($categoriesandcestors)->toHierarchy();
谢谢!不幸的是,我无法测试它,因为我不再与Laravel合作了。我在发帖3年后发现了它,所以也许再过3年,它会帮助某人:D