我在 Laravel 中有以下集合:
["TheNumbers":[{"episodeID":16818,"episodeNumber":100,"created_at":null,"updated_at":null},{"episodeID":16818,"episodeNumber":210,"created_at":"2017-02-20 21:30:38","updated_at":"2017-02-20 21:30:38"}]
如果我运行以下代码:
$TheEpisode->TheNumbers->pluck('episodeNumber');
我会得到如下结果:
[100,210]
我想保留每个数字的 key ,我该如何实现?
编辑:预期结果:
这是我的预期结果:
[{"episodeNumber":100},{"episodeNumber":210}]
PHILIS PETERS(改进)
TheEpisode->TheNumbers->reduce(function ($result, $episode) {
$episodeData = (collect())->put('episodeNumber', $episode['episodeNumber']);
$result[] = $episodeData;
return $result;
}));
最佳答案
Pluck()可以带两个参数。第二个是可以作为键值的值。
你应该能够做到:
$TheEpisode->TheNumbers->pluck('episodeNumber', 'episodeID');
希望这对您有所帮助!
关于php - Laravel Eloquent Pluck 不丢 key ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42355226/