亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

php中的組json嵌套對象

php中的組json嵌套對象

PHP
浮云間 2023-07-01 15:08:25
我有一個 json 響應,如下所示:$response ='[    {        "userSummaries": [            {                "id": "9910",                "status": "Active",                "name": "Jhon"            }        ]    },    {        "userSummaries": [            {                "id": "8754",                "status": "Active",                "name": "Jane"            }        ]    }]';我想用userSummaries這個 php 代碼將其分組:$myArr = json_decode($response, true);      $result_arr = [];        array_walk($myArr,function($v,$k) use (&$result_arr){       $result_arr[key($v)] = $v[key($v)];     });       echo json_encode($result_arr);并且響應只返回一個數據:{"userSummaries":[{"id":"8754","status":"Active","name":"Jane"}]}是否可以得到這樣的輸出響應?:{"userSummaries":[{"id":"9910","status":"Active","name":"Jhon"}, {"id":"8754","status":"Active","name":"Jane"}, ]}通過網絡嘗試過,但沒有找到解決方案這是我的腳本: https: //3v4l.org/tVkK5也嘗試過這個:$class_array = array();foreach ($myArr as $sa) {    $class_array[$sa['userSummaries']][] = array('name' => $sa['name']);}但返回:Notice: Undefined index: name in /in/hvSFC on line 28Warning: Illegal offset type in /in/hvSFC on line 28Notice: Undefined index: name in /in/hvSFC on line 28Warning: Illegal offset type in /in/hvSFC on line 28[]需要幫忙
查看完整描述

1 回答

?
哈士奇WWW

TA貢獻1799條經驗 獲得超6個贊

你很接近。您只需要在每個循環中引用鍵和第一個userSummaries,而不是使用整個...


$myArr = json_decode($response, true);

$result_arr = ["userSummaries"=>[]];

foreach($myArr as $user) {

    $result_arr["userSummaries"][] = $user['userSummaries'][0];

}

echo json_encode($result_arr);

結果是:


{"userSummaries":[

    {"id":"9910","status":"Active","name":"Jhon"},

    {"id":"8754","status":"Active","name":"Jane"}

]}

如果您預見每個中的 userSummaries 本身將有多個用戶......那么這將起作用:


$response ='[

    {

        "userSummaries": [

            {

                "id": "9910",

                "status": "Active",

                "name": "Jhon"

            }

        ]

    },

    {

        "userSummaries": [

            {

                "id": "8754",

                "status": "Active",

                "name": "Jane"

            },

            {

                "id": "5421",

                "status": "Active",

                "name": "Bob"

            }

        ]

    }

]';


$myArr = json_decode($response, true);

$result_arr = ["userSummaries"=>[]];

foreach($myArr as $usergroup) {

    foreach($usergroup['userSummaries'] as $user) {

        $result_arr["userSummaries"][] = $user;

    }

}

echo json_encode($result_arr);

結果是:


{"userSummaries":[

    {"id":"9910","status":"Active","name":"Jhon"},

    {"id":"8754","status":"Active","name":"Jane"},

    {"id":"5421","status":"Active","name":"Bob"}

]}


查看完整回答
反對 回復 2023-07-01
  • 1 回答
  • 0 關注
  • 156 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號