Laravel收藏mapWithKeys

Sar*_*mar 5 php laravel laravel-collection laravel-5.2 laravel-5.3

我一直在尝试使用laravel的集合函数mapWithKeys创建一个数组,但是我无法实现我所需要的.

这是我的代码,

$years = range(1900, date('Y'));

return collect($years)->mapWithKeys(function($value){
    return [$value => $value];
})->all();
Run Code Online (Sandbox Code Playgroud)

预期结果

Array
(
    [1900] => 1900
    [1901] => 1901
    [1902] => 1902
    ....
    [2017] => 2017
)
Run Code Online (Sandbox Code Playgroud)

但我得到的是

Array
(
    [0] => 1900
    [1] => 1901
    [2] => 1902
    ...
    [117] => 2017
)
Run Code Online (Sandbox Code Playgroud)

Ale*_*nin 4

我已经测试了这段代码,它运行得很好:

$years = range(1900, date('Y'));
return collect($years)->map(function($i) {
    return ['year' => $i];
}, $years)->pluck('year', 'year');
Run Code Online (Sandbox Code Playgroud)