这是我的问题
DB::table('genres')
->join('albumGenres', 'genres.id', '=', 'albumGenres.genre_id')
->join('albums', 'albumGenres.album_id', '=', 'albums.id' )
->select('genres.id')
->where('albumGenres.album_id','=',$this->id)->get();
但是我得到了这样的东西
"genre_id": [
{
"id": "4"
},
{
"id": "8"
}
]
我应该怎么做才能将结果作为数组获取
"genre_id" : [4,8]
最佳答案
对于新版本的 Laravel,您应该使用 pluck() 而不是 lists()。
DB::table('genres')
->join('albumGenres', 'genres.id', '=', 'albumGenres.genre_id')
->join('albums', 'albumGenres.album_id', '=', 'albums.id' )
->where('albumGenres.album_id', '=', $this->id)
->pluck('genres.id');
这是文档中的引用:https://laravel.com/docs/5.4/queries#retrieving-results (请参阅“检索列值列表”)
关于php - 查询构建器获取结果数组而不是 Laravel 中的对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30175026/