如何将 Laravel\’is 集合转换为数组对象集合?

How to covert Laravel's collection to array object collection?

我有如下的小型 laravel 集合。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
[
 {
  id: 1,
   data1: 11,
   data2: 12,
   data3: 13,
   created_at: null,
   updated_at: null
 },
 {
   id: 2,
   data1: 14,
   data2: 15,
   data3: 16,
   created_at: null,
   updated_at: null
 }
]

但我想转换为如下所示的数组集合。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
{
 data: [
   [
     11,
     12,
     13
   ],
   [
     14,
     15,
     16
   ]
 ]
}

感谢您的建议,对我的英语感到抱歉。非常感谢。

相关讨论

  • 你试过toArray()吗?
  • 亲爱的科林,非常感谢您的指导,谢谢。
  • 也许参考 laravel.com/docs/7.x/eloquent-resources
  • 希望能帮到你 ! stackoverflow.com/questions/36849481/…
  • 亲爱的 Saengdaet, 谢谢,我会检查一下。
  • 亲爱的 Abir Adak, 感谢您的链接。

使用 toArray() 将此对象转换为数组。

1
$data->toArray();

现在集合转换为数组,如下所示:-

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
[
 [
  id: 1,
   data1: 11,
   data2: 12,
   data3: 13,
   created_at: null,
   updated_at: null
 ],
 [
   id: 2,
   data1: 14,
   data2: 15,
   data3: 16,
   created_at: null,
   updated_at: null
 ]
]

但是根据您的要求,您不需要数组的关联索引,所以使用

1
$data = array_values($data);

现在您的密钥已被删除,最终数据为:-

1
2
3
4
5
6
7
8
9
10
11
12
[
   [
     11,
     12,
     13
   ],
   [
     14,
     15,
     16
   ]
 ]

相关讨论

  • 亲爱的 Sahil Gupta, 实际上它需要添加前缀 \'data: \'。
  • @joenpcnpcsolution 只需使用 $data[\'data\'] = array_values($data);

以上是如何将 Laravel\’is 集合转换为数组对象集合?的全部内容。
THE END
分享
二维码
< <上一篇
下一篇>>