Laravel 5 以雄辩的方式获取fieldname中的数据=>;字段值键

Laravel 5 以雄辩的方式获取fieldname中的数据=>;字段值键,laravel-5,eloquent,Laravel 5,Eloquent,在laravel 5.8中提出请求 $searchResultsArray = SearchResult ::getBySourceId($next_sourceId['source_id']) ->select( 'field', 'value' ) ->get() ->toArray(); 我得到的结果行如下: $searchResultsArray::Arra

在laravel 5.8中提出请求

        $searchResultsArray = SearchResult
            ::getBySourceId($next_sourceId['source_id'])
            ->select( 'field', 'value' )
            ->get()
            ->toArray();
我得到的结果行如下:

$searchResultsArray::Array
(
    [0] => Array
        (
            [field] => Id
            [value] => 302530
        )

    [1] => Array
        (
            [field] => Domain
            [value] => site.com
        )
如果有办法 fieldname=>fieldvalue键的数组,如

Id => 302530 
Domain=> site.com
在我的代码中没有加法foreach块


如果是,怎么做?

是的,有。雄辩者总是会返回收藏。您可以先使用
mapWithKeys()
()修改集合,然后将其转换为数组

试着这样做:

$searchResultsArray = SearchResult
    ::getBySourceId($next_sourceId['source_id'])
    ->select( 'field', 'value' )
    ->get()
    ->mapWithKeys(function ($item) {
        return [$item['field'] => $item['value']];
    })
    ->all();