包含模型到数组的 Laravel 集合

Mat*_*ieu 2 php phpexcel laravel laravel-5.5

我有一个包含多个用户模型的 Laravel 集合。

Collection([
    User,
    User,
])
Run Code Online (Sandbox Code Playgroud)

该模型包含例如用户名、名字、姓氏、电子邮件、出生日期。我只需要用户名、电子邮件、日期并将其放在这样的数组中。

array(
    array('jonhdoe', 'johndoe@example.com', '1-1-1970')
)
Run Code Online (Sandbox Code Playgroud)

这样我就可以访问它

$username = $array[0][0]
$email = $array[0][1]
Run Code Online (Sandbox Code Playgroud)

并不是

$username = $array[0]['username']
$email = $array[0]['email']
Run Code Online (Sandbox Code Playgroud)

我正在查看每个 Laravel 助手或地图,但不知何故我无法让它工作。

Ale*_*nin 6

only()将仅返回指定列的数组。并将toArray()集合转换为数组:

$collection->map(function($i) {
    return array_values($i->only('username', 'email', 'date'));
})->toArray();
Run Code Online (Sandbox Code Playgroud)