合并共享相同 ID 的数组

目前我有这样的JSON:


[

  {

    "user_id": 6,

    "room_id": 2,

    "date_from": "2019-09-15 00:00:00",

    "date_to": "2020-09-01 00:00:00",

    "created_at": null,

    "updated_at": null,

    "users": [

      {

        "id": 6,

        "name": "Makenna",

        "surname": "Boyle",

        "email": "nparker@yahoo.com",

        "university_id": 3

      }

    ],

    "room": {

      "id": 2,

      "room_number": 327,

      "floor": 3,

      "slots": 2,

      "dorm_id": 1,

      "price": 0,

      "features": "[{\"feature\":\"Nemokamas WiFi\",\"feature\":\"Erdvus dušas\"}]",

      "photos": "[{\"img\":\"\\/images\\/rooms\\/9_1_5d3f6735884627.19832875.jpg\"},{\"img\":\"\\/images\\/rooms\\/9_1_5d3f673589a070.51161328.jpg\"},{\"img\":\"\\/images\\/rooms\\/9_1_5d3f67358b0419.09559739.jpg\"}]",

      "created_at": null,

      "updated_at": null,

      "dorm": {

        "id": 1,

        "name": "Statybininkų prospekto bendrabutis",

        "university_id": 2,

        "photo": "https://www.umt.edu/housing/rh/descriptions/photos/Miller%20West%20Side%20View.jpg",

        "university": {

          "id": 2,

          "name": "Klaipėdos Universitetas",

          "city": "Klaipėda"

        }

      }

    }

  },

  {

    "user_id": 8,

    "room_id": 2,

    "date_from": "2019-09-15 00:00:00",

    "date_to": "2020-09-01 00:00:00",

    "created_at": null,

    "updated_at": null,

    "users": [

      {

        "id": 8,

        "name": "Kassandra",

        "surname": "Blick",

        "email": "fschuppe@armstrong.com",

        "university_id": 2

      }

    ],


喵喵时光机
浏览 123回答 1
1回答

梵蒂冈之花

此代码将帮助您实现目标。$data = json_decode($json);$newFormat = [];foreach ($data AS $each) {&nbsp; &nbsp; if (!isset($newFormat[$each->room_id])) {&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; $newFormat[$each->room_id] = $each;&nbsp; &nbsp; } else {&nbsp; &nbsp; &nbsp; &nbsp; $newFormat[$each->room_id]->users[] = $each->users[0];&nbsp; &nbsp; }}echo "<pre>" . var_export($newFormat, true) . "</pre>";这将显示您期望的确切结果
打开App,查看更多内容
随时随地看视频慕课网APP