我有一些Laravel系列包含一些字段:
Collection {#324 ▼
#items: array:3 [▼
0 => array:5 [▼
"img_src" => "http://newregalospersonales.dev/./svg/regalos-personalizados-gift.svg"
"img_alt" => "<span>Regalos</span> originales"
"class" => "personalised-gifts"
"elements" => array:4 [▼
0 => array:2 [▶]//element1
1 => array:2 [▶]//element2
2 => array:2 [▶]//element3
3 => array:2 [▶]//element4
]
]
1 => array:5 [▼
"img_src" => "http://newregalospersonales.dev/./svg/love-gifts.svg"
"img_alt" => "<span>Regalos</span> románticos"
"class" => "love-gifts"
"elements" => array:4 [▼
0 => array:2 [▶]//element1
1 => array:2 [▶]//element2
2 => array:2 [▶]//element3
3 => array:2 [▶]//element4
]
]
2 => array:5 [▼
"img_src" => "http://newregalospersonales.dev/./svg/regalos-ocasiones-especiales.svg"
"img_alt" => "<span>Detalles</span><br>de boda"
"class" => "wedding"
"elements" => array:4 [▼
0 => array:2 [▶]//element1
1 => array:2 [▶]//element2
2 => array:2 [▶]//element3
3 => array:2 [▶]//element4
]
]
]
}
我只收到字段'elements'的集合。
我想要一个这样的结果:
Collection {#324 ▼
#items: array:3 [▼
0 => array:4 [▼
0 => array:2 [▶] //element1
1 => array:2 [▶ //element2
2 => array:2 [▶] //element3
3 => array:2 [▶] //element4
]
1 => array:4 [▼
0 => array:2 [▶] //element1
1 => array:2 [▶] //element2
2 => array:2 [▶] //element3
3 => array:2 [▶] //element4
]
2 => array:4 [▼
0 => array:2 [▶] //element1
1 => array:2 [▶] //element2
2 => array:2 [▶] //element3
3 => array:2 [▶] //element4
]
]
}
有没有办法做到这一点? 我正在使用Laravel 5.3版本,我不知道这种情况下的集合过滤器使用。
答案 0 :(得分:6)
答案 1 :(得分:2)
答案 2 :(得分:1)
您可以使用laravel的pluck()
方法从集合中获取所选的键,如下所示:
$plucked_items = $collection->pluck('elements'); // returns a collection
$plucked_items_arr = $plucked_items->all(); // returns an array
希望这有帮助!