如何在数据库中保存 JSON - laravel 8

How to save JSON in DB - laravel 8

我会 JSON 并尝试将其反汇编并保存在数据库中:

{
    "token": "f56445c24ad84e9c452f3ca6ef91e90beb2aef21",
    "participant": "ZuP0rsny3MhqLC0",
    "data":{
        "orgs":[{
            "org1":{
                "attribute":[{
                    "name": "val",
                    "inn": "val",
                    "kpp": "val"
                }],
                "tickets": [{
                    "ticket1":[{
                        "account_uid": "val",
                        "created_at": "val",
                        "title": "val",
                        "text": "val",
                        "status": "val",
                        "priority": "val",
                        "fullname": "val",
                        "workaddr": "val",
                        "phone": "val",
                        "email": "val",
                        "workstart": "val",
                        "workend": "val",
                        "dispetcher": "val",
                        "responsible": "val",
                        "closed_at": "val",
                        "file": "val"
                    }]
                }]
            }
        }]
    }
}

我将尝试使用 Illuminate\Http\Request(Request $request) 将其保存到数据库,但无法访问数组 org1 和 ticket。
错误:

Undefined array key "org1"

往哪个方向移动? 谢谢

将json改成数组:

$json_array = json_decode($your_json, true);

访问你想要的元素:

$org1 = $json_array['data']['orgs']['org1'];

如果你想转换成json:

$org1 = json_encode($org1);

dd() 输出:

array:1 [
  0 => array:1 [
    "orgs" => array:1 [
      0 => array:1 [
        "org1" => array:1 [
          0 => array:2 [
            "attribute" => array:1 [
              0 => array:3 [
                "name" => "Из json"
                "inn" => "88888111"
                "kpp" => "11188888"
              ]
            ]
            "tickets" => array:1 [
              0 => array:1 [
                "ticket1" => array:1 [
                  0 => array:14 [
                    "account_uid" => "UKP2010001002"
                    "created_at" => "2021-13-07"
                    "title" => "Из json"
                    "text" => "Из json"
                    "status" => "1"
                    "priority" => "2"
                    "fullname" => "Вася Джейсонович"
                    "workaddr" => "дом улица фонарь"
                    "phone" => "+791478562548"
                    "email" => "vasya@mail.ru"
                    "workstart" => "вечером"
                    "workend" => "утром"
                    "dispetcher" => "Матрёна Петровна"
                    "responsible" => "Гайдай Пётр"
                  ]
                ]
              ]
            ]
          ]
        ]
      ]
    ]
  ]
]