从Laravel Collection转换数组

时间:2018-02-21 16:59:02

标签: php arrays laravel

我正在使用Laravel 4.2。这可能很简单。 当我从使用 - > get()的雄辩模型得到结果时,我得到了这种类型的结果

[{"name":"JOHN","tel":"12345"},{"name":"JANE","tel":"67890"}]

我想转换为这种格式

[["JOHN","12345"],["JANE","67890"]]

我一直在努力解决这个问题,而且我不知道要搜索的确切关键字。

2 个答案:

答案 0 :(得分:4)

使用map()收集方法和array_values()。刚试过这个并且它完美运行:

$collection->map(function ($i) {
    return array_values($i);
})->toArray();

在4.2中使用array_map

array_map(function ($i) {
    return array_values($i);
}, $collection->toArray());

答案 1 :(得分:3)

https://laravel.com/docs/4.2/eloquent#collections

这可能是一种较短的方法,因为each方法也可用于集合,虽然@Alexey答案很好。

$collection->each(function ($i) {
    return array_values($i);
})->toArray();