我有一个响应,我正在构建一个数组。我不得不从原始响应中获取某些id来创建另一个rest连接器。代码看起来像这样(借口变量名称,我在一段时间后用完了想法):
foreach ($newArray as $r=>$p){
foreach ($p as $t=>$hoop){
checksession();
$restNew2 = new RESTConnector();
$urlNew2 = "https://localhost:9630/api/users/".$p['user']."/";
$restNew2->createRequest($urlNew2,"GET", null, $_SESSION['cookies'][0]);
$restNew2->sendRequest();
$responseNew2 = $restNew2->getResponse();
$xmlNew2 = new SimpleXMLElement($responseNew2);
$newerArray = array();
foreach ($xmlNew2->children() as $newestChild){
for($g=0, $count2 = count($xmlNew2); $g < $count2; $g++) {
$userID = (string)$xmlNew2['id'];
$first[] = (string)$xmlNew2->name->first;
$last[] = (string)$xmlNew2->name->last;
$newerArray[$g]['first'] = $first[$g];
}
}
}
}
如果我打印数组,它看起来像:
Array
(
[0] => Array
(
[first] => LightSpeed
)
[1] => Array
(
[first] => LightSpeed
)
[2] => Array
(
[first] => LightSpeed
)
[3] => Array
(
[first] => LightSpeed
)
[4] => Array
(
[first] => LightSpeed
)
[5] => Array
(
[first] => LightSpeed
)
[6] => Array
(
[first] => LightSpeed
)
[7] => Array
(
[first] => LightSpeed
)
[8] => Array
(
[first] => LightSpeed
)
[9] => Array
(
[first] => LightSpeed
)
[10] => Array
(
[first] => LightSpeed
)
[11] => Array
(
[first] => LightSpeed
)
[12] => Array
(
[first] => LightSpeed
)
[13] => Array
(
[first] => LightSpeed
)
[14] => Array
(
[first] => LightSpeed
)
[15] => Array
(
[first] => LightSpeed
)
[16] => Array
(
[first] => LightSpeed
)
[17] => Array
(
[first] => LightSpeed
)
[18] => Array
(
[first] => LightSpeed
)
}
我试图获取用户名的18个发票,但用户名应该是全不同的。当我print_r($ first}(这是响应中用户的第一个名字)时,我得到了近2000个数组条目,其中显示了那些不同的用户名。我已经搞乱了几个小时而且无法得到它。请帮助!
答案 0 :(得分:0)
试试这个:
$xmlNew2 = new SimpleXMLElement($responseNew2);
$new_array = json_decode(json_encode($xmlNew2));
然后循环$new_array
。这应该更容易使用。