Vec*_*tor 2 php query-builder laravel
这是我的查询
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();
Run Code Online (Sandbox Code Playgroud)
但我得到这样的东西
"genre_id": [
{
"id": "4"
},
{
"id": "8"
}
]
Run Code Online (Sandbox Code Playgroud)
我该怎么做才能将结果作为一个数组
"genre_id" : [4,8]
Run Code Online (Sandbox Code Playgroud)
小智 7
在新版本的 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');
Run Code Online (Sandbox Code Playgroud)
这是文档中的参考:https : //laravel.com/docs/5.4/queries#retrieving-results(参见“检索列值列表”)
只需使用->lists('id')而不是->get():
DB::table('genres')
->join('albumGenres', 'genres.id', '=', 'albumGenres.genre_id')
->join('albums', 'albumGenres.album_id', '=', 'albums.id' )
->where('albumGenres.album_id', '=', $this->id)
->lists('genres.id');
Run Code Online (Sandbox Code Playgroud)
阅读更多:http://laravel.com/docs/5.0/queries#selects(检索列值列表部分)
| 归档时间: |
|
| 查看次数: |
8609 次 |
| 最近记录: |