将 eloquent 结果转换为 Laravel 中的关联数组

Convert eloquent result to associative array in Laravel

如何将 eloquent 的结果转换为关联数组。我需要 select 拖列并将一个作为键,另一个作为值。这是我得到的壁橱,但值是一个数组。我希望它只有 "my_value" 列。

$array = Post::select('my_key','my_value')->get()->keyBy('my_key')

我找到了这样做的方法,但我不确定它是否是明智地执行此性能的正确方法...

$array = Post::select('my_key','my_value')->get()->mapWithKeys(function ($item) {
            return [$item['my_key'] => $item['my_value']];
        })->toArray();

您应该使用 lists (Laravel 5.1) 或 pluck (Laravel 5.2+):

$array = Post::lists('my_value', 'my_key');

$array = Post::pluck('my_value', 'my_key');