为了账号安全,请及时绑定邮箱和手机立即绑定

在 Laravel 控制器中访问 JSON 数组

在 Laravel 控制器中访问 JSON 数组

PHP
一只名叫tom的猫 2023-07-30 13:33:26
我目前对 Vue 组件发送到 Laravel 控制器的一些数据有点困惑。数据如下:array:2 [  0 => {#1246    +"id": 1    +"name": "Developer"  }  1 => {#1249    +"id": 2    +"name": "Ops Matrix Admin"  }]例如,如果我想从中获取 thename或 theid作为对象,以便我可以通过 eloquent 来使用它。我该怎么做呢?这就是我的控制器目前的样子。  public function editUserPermissions(Request $request, $id) {      foreach($request->all() as $key => $value) {        $decode = json_decode($value);        dd($decode);    }  }当我这样做时,dd($request->all());我得到以下信息:array:1 [  "body" => "[{"id":1,"name":"Developer"},{"id":3,"name":"Ops Matrix User"}]"]
查看完整描述

2 回答

?
慕姐8265434

TA贡献1813条经验 获得超2个赞

您需要循环遍历结果。结果是一个数组。


更好的方法是使用 $request->getContent()


但是使用你的代码


public function editUserPermissions(Request $request, $id) {

      foreach($request->all() as $key => $value) {

        $decode = json_decode($value);


        foreach($decode as $decoded) {

            echo $decoded['id'];

        }

    }

  }


查看完整回答
反对 回复 2023-07-30
?
慕无忌1623718

TA贡献1744条经验 获得超4个赞

public function editUserPermissions(Request $request, $id) {

      $bodys = $request->body;

      foreach($bodys as $key => $body) {

           //$key give current index of array 

           $body[$key]['id'] //this give id 

           $body[$key]['name'] //this give name 

      }

  }



查看完整回答
反对 回复 2023-07-30
  • 2 回答
  • 0 关注
  • 128 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信