Laravel 提供了带有lists() 函数的查询生成器
根据您的情况,您可以替换您的代码
$items = Items::all(['id', 'name']);
with
$items = Items::lists('name', 'id');
此外,您也可以将其与其他查询生成器链接。
$items = Items::where('active', true)->orderBy('name')->lists('name', 'id');
source: http://laravel.com/docs/5.0/queries#selects http://laravel.com/docs/5.0/queries#selects
Laravel 5.2 更新
非常感谢@jarry。正如您提到的,Laravel 5.2 的函数应该是
$items = Items::pluck('name', 'id');
or
$items = Items::where('active', true)->orderBy('name')->pluck('name', 'id');
ref: https://laravel.com/docs/5.2/upgrade#upgrade-5.2.0 https://laravel.com/docs/5.2/upgrade#upgrade-5.2.0-- 查看弃用列表