独一无二 collection Laravel
Unique collection Laravel
我想知道如何区分这个 Laravel collection 中的值,因为有 objects
的子数组
太多 sub-arrays,但我不知道如何过滤这个 collection 以减少 sub-arrays
我希望获得更少的 sub-arrays 以便我可以使其在 collection
中具有独特且明确的值
我是这样得到的:
$CategorieTree = $CategoriesItineraires->map(function ($categorie) {
return (object) [
$categorie->categorie->map(function ($items) {
return $items;
})
];
});
这是结果!
Illuminate\Support\Collection Object
(
[items:protected] => Array
(
[0] => stdClass Object
(
[0] => Illuminate\Support\Collection Object
(
[items:protected] => Array
(
[0] => Fongicides et assimilés
)
)
)
[1] => stdClass Object
(
[0] => Illuminate\Support\Collection Object
(
[items:protected] => Array
(
[0] => Autres
)
)
)
[2] => stdClass Object
(
[0] => Illuminate\Support\Collection Object
(
[items:protected] => Array
(
[0] => Insecticides et assimilés
[1] => Fongicides et assimilés
)
)
)
[3] => stdClass Object
(
[0] => Illuminate\Support\Collection Object
(
[items:protected] => Array
(
[0] => Autres
)
)
)
)
)
Laravel collections 有很多 options
我想你正在寻找 flatten
除此之外,您应该稍微更改一下代码,第一个 return object [...]
给出了一个奇怪的结果。
我想你想要以下内容:
$CategorieTree = $CategoriesItineraires->map(function ($categorie) {
return $categorie->categorie->map(function ($items) {
return $items;
});
})->flatten();
编辑:
可以缩短为:
$CategorieTree = $CategoriesItineraires->map(function ($categorie) {
return $categorie->categorie;
})->flatten();
我想知道如何区分这个 Laravel collection 中的值,因为有 objects
的子数组太多 sub-arrays,但我不知道如何过滤这个 collection 以减少 sub-arrays
我希望获得更少的 sub-arrays 以便我可以使其在 collection
中具有独特且明确的值我是这样得到的:
$CategorieTree = $CategoriesItineraires->map(function ($categorie) {
return (object) [
$categorie->categorie->map(function ($items) {
return $items;
})
];
});
这是结果!
Illuminate\Support\Collection Object
(
[items:protected] => Array
(
[0] => stdClass Object
(
[0] => Illuminate\Support\Collection Object
(
[items:protected] => Array
(
[0] => Fongicides et assimilés
)
)
)
[1] => stdClass Object
(
[0] => Illuminate\Support\Collection Object
(
[items:protected] => Array
(
[0] => Autres
)
)
)
[2] => stdClass Object
(
[0] => Illuminate\Support\Collection Object
(
[items:protected] => Array
(
[0] => Insecticides et assimilés
[1] => Fongicides et assimilés
)
)
)
[3] => stdClass Object
(
[0] => Illuminate\Support\Collection Object
(
[items:protected] => Array
(
[0] => Autres
)
)
)
)
)
Laravel collections 有很多 options
我想你正在寻找 flatten
除此之外,您应该稍微更改一下代码,第一个 return object [...]
给出了一个奇怪的结果。
我想你想要以下内容:
$CategorieTree = $CategoriesItineraires->map(function ($categorie) {
return $categorie->categorie->map(function ($items) {
return $items;
});
})->flatten();
编辑:
可以缩短为:
$CategorieTree = $CategoriesItineraires->map(function ($categorie) {
return $categorie->categorie;
})->flatten();