【问题标题】:Convert Array From Laravel Collection从 Laravel 集合转换数组
【发布时间】:2018-08-01 08:40:08
【问题描述】:

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

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

我想转换成这种格式

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

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

【问题讨论】:

    标签: php arrays laravel


    【解决方案1】:

    使用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());
    

    【讨论】:

    • 这是 laravel 4.2。 map() 不可用。
    • @lucaditrimma 我也用 4.2 的解决方案更新了答案。
    【解决方案2】:

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

    这可能是一种更短的方法,因为each 方法也适用于集合,尽管@Alexey 答案很好。

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

    【讨论】:

      猜你喜欢
      • 2016-05-12
      • 1970-01-01
      • 2019-08-10
      • 2018-02-16
      • 2018-08-11
      • 2017-06-30
      • 2019-01-05
      • 2019-07-05
      相关资源
      最近更新 更多