[responseheader] => Object (
Array (
[0] => Object (
[id] => id_1
[name] => abc
)
[1] => Object (
[id] => id_2
[name] => xyz
)
)
)
[response] => Object (
[id_1] => Object (
[content] => Array (
[0] => content_1
)
)
[id_2] => Object (
[content] => Array (
[0] => content_2
)
)
)
以上两个对象responseheader
和response
都在一个对象(header
)下。
在上述结构中,response
的顺序与responseheader
中的顺序相同。(即,id_2将始终位于id_1
之后)
我希望content
中response
来自id
中的每个responseheader
。我将迭代responseheader
对象。
我可以遍历response
并逐步在存储dummy
的{{1}}内添加另一个属性(比如responseheader
),但有更好,更快的方法吗?
答案 0 :(得分:1)
这应该可以解决问题。
$result = array();
//loop through responseheader array
foreach($data['responseheader'] as $row)
{
//if the id exists in the response array add it to the result array
if(array_key_exists($row['id'], $data['response'])) {
$result[] = $data['response'][$row['id']]['content'][0];
}
}
print_r($result);
如果响应中的内容可能包含多个内容,则必须将其循环到:
foreach($data['response'][$row['id']]['content'] as $content) {
$result[] = $content;
}