如何将 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);


来源:https://www.codenong.com/61522653/

微信公众号
手机浏览(小程序)
0
分享到:
没有账号? 忘记密码?