Search code examples
phplaravellaravel-5laravel-5.3

Convert eloquent result to associative array in Laravel


How can convert the result from eloquent to associative array. I need to select tow column and have one as key and another as value. Here is the closet I got, however the value is an array. I want it to be only "my_value" column.

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

Solution

  • You should use lists (Laravel 5.1) or pluck (Laravel 5.2+):

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

    or

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