我相对较新,目前正在学习php。我现在正尝试使用JSON数据。我想回应所有NODES,但我无法找到解决方案。也许有人可以帮助我。
API: https://flightplandatabase.com/dev/api#route
API XML: https://api.flightplandatabase.com/plan/62478
我想要的是什么: route.nodes []。ident< - 所有节点标识符。不仅是第一个
目前我只获得第一个#NODE"。我是否有可能在没有太多努力的情况下同时将每个NODE都拿出来?
<?php
$ch = curl_init();
curl_setopt($ch,CURLOPT_URL, 'https://api.flightplandatabase.com/plan/62478');
curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);
$output = curl_exec($ch);
curl_close($ch);
$finalarray = json_decode($output);
$finalstring = json_encode($output);
?>
<div>
<p><?php echo $finalarray->route->nodes[0]->ident; ?></p>
</div>
希望你明白我的意思。 :)
答案 0 :(得分:0)
这是因为您将其设置为仅打印第一个[0]
。
尝试使用for:
$nodes = $finalarray->route->nodes
for ($i=0; $i<count($nodes); $i++) {
echo nodes[$i]->ident;
}
另外,最好这样做:
json_decode($yourarray, true);
和
json_encode($yourarray, JSON_UNESCAPED_UNICODE);