Php 拉雷维尔。无法从嵌套集合中获取值
我正在控制器中执行push命令,将其添加到集合中。 这是在从$send1接收数据之后,在while循环中Php 拉雷维尔。无法从嵌套集合中获取值,php,laravel,Php,Laravel,我正在控制器中执行push命令,将其添加到集合中。 这是在从$send1接收数据之后,在while循环中 $send3->push($send1); $send3和$send1都是集合 在while循环之后,我回显$send3,它给了我 [{"id":31,"info":3},[{"id":0,"info":1}]] 我想从两个(或多个)获得信息,例如:3,1 我如何才能做到这一点: [{"id":31,"info":3},{"id":0,"info":1}] 或者从嵌套集合中获取信
$send3->push($send1);
$send3和$send1都是集合
在while循环之后,我回显$send3,它给了我
[{"id":31,"info":3},[{"id":0,"info":1}]]
我想从两个(或多个)获得信息,例如:3,1
我如何才能做到这一点:
[{"id":31,"info":3},{"id":0,"info":1}]
或者从嵌套集合中获取信息值?合并集合,然后使用以下方法:
您说过,
$send3
和$send1
都是集合。在这种情况下,使用merge()
方法来添加数据,而不是push()
:
然后您就可以使用pulk()
:
您应该使用干净的格式,以便能够使用诸如
pulk()
或array\u pulk
之类的方法。现在它将不起作用,您需要手动迭代集合并获取数据。因此,您应该修复用于构建集合并向集合添加数据的代码。请显示代码。我尝试使用Pulk,但结果是:[{“id”:31,“info”:3}]。我需要所有的结果,而不仅仅是它的第一个链toArray()。我应该排列哪一个?另外,Pulk里面还有另一个收藏,你需要先把这些收藏合并在一起,好吧,伙计们,我试着按我说的做,但结果只给了我1个。
$merged = $send1->merge($send3);
$plucked = $merged->pluck('info')->toArray();
// [3, 1]
$send3 = $send3->merge($send1);
$send3->pluck('info')