无法通过属性Laravel 5.8访问集合

时间:2019-07-17 03:57:44

标签: php laravel laravel-5

所以我在请求中具有三个相同长度的不同数组,下面是将它们组合为一个集合的方法:

Colors:Array<any> = ["#FFF","#0b9660","#FF0000","#000","#FFF","#ffd11a","#fb9667"];

  getColors(index) {

    let num = this.getnumber(index);
    return this.Colors[num];
  }

  getnumber(data){

    let i = data;
    if(i > this.Colors.length-1){

       i = i - this.Colors.length;
       if(i < this.Colors.length){
        return i;
       }
       else {
        this.getnumber(i);
       }

    }
    else {
      return i;
    }


  }

结果对我来说看起来是正确的:

enter image description here

但是,当我遍历集合时,我无法访问它:

$inputs = collect();
$keys = collect(['id', 'username', 'email']);
foreach ($request['ids'] as $index => $id) {
   $username = $request['usernames'][$index];
   $email = $request['emails'][$index];
   $inputs->push($keys->combine([$id, $username, $email]));
}

这是dd($ input)的结果:

enter image description here

有关此问题的任何指针? (将数组组合成一个集合的另一种简短方法也将受到赞赏!)

谢谢。

2 个答案:

答案 0 :(得分:1)

这是一个集合,您应该这样获得它:dd($input['id'])

答案 1 :(得分:0)

您可以合并bt数组array_merge

array_merge($a1,$a2)

或收集

$c=collect([$arr1,$arr2])

然后根据需要采摘

$c->pluck('username')