在 Laravel 控制器中访问多维数组数据

问题描述 投票:0回答:1

希望你一切都好。

我目前有一个数组正在传递到我的 Laravel 控制器,如下所示:

Illuminate\Http\Request {#43
  #json: Symfony\Component\HttpFoundation\ParameterBag {#35
    #parameters: array:3 [
      0 => array:2 [
        "id" => 1
        "name" => "Developer"
      ]
      1 => array:2 [
        "id" => 2
        "name" => "Admin"
      ]
      2 => array:2 [
        "id" => 3
        "name" => "Ops Matrix User"
      ]
    ]
  }

我只是想知道如何访问 Laravel 控制器函数内的数组。

我的猜测是这样的:

$request[0]->name
但是当我这样做时,它只返回其中一个名称,而不是三个。所以主要问题是我如何遍历每个数组并从各个数组中获取名称?

提前致谢。

更新

意识到这是一个 json 数组后,我现在对这个值做了

json_decode
,它返回了以下内容:

array:3 [
  0 => {#1246
    +"id": 1
    +"name": "Developer"
  }
  1 => {#1249
    +"id": 2
    +"name": "Ops Matrix Admin"
  }
  2 => {#1247
    +"id": 3
    +"name": "Ops Matrix User"
  }
]

但问题仍然是如何从该数组中获取所有

name
值并准备好供 Laravel 使用?

php laravel
1个回答
0
投票

您可以使用foreach循环来迭代请求。它会是这样的:

foreach($request->all() as $key => $value) {
      // to dump array key and value
      dump($key, $value);
       
      //lets say i want to access name value
      foreach($value as $val){

          $name=$val['name'];
          dump($name) // it will display "Developer" "Admin" "Ops Matrix User"
     }
}
© www.soinside.com 2019 - 2024. All rights reserved.