2017-11-11 92 views
0

我正在使用API​​来提取机场信息数据并以json的形式打印数据。从变量中添加参数以提取json数据

我使用json_decode()来存储此JSON到数组(我用的是,真正的)

我有一个循环,检查到达的飞机的数量并且取得了成功,因为如果有15个进港航班也可以打印出一串文字15次。但是,解码json时,我需要使用参数来获取信息。例如,如果我想要得到多少来的,我需要做的是这样的:

$jsonDecode = json_decode($json_file, true); 
print_r($jsonDecode['AirportBoardsResult']['arrivals']['num_flights']); 

这给了多少来港有,其结果可以被放置到一个变量是这样的:

$arrivals = $jsonDecode['AirportBoardsResult']['arrivals']['num_flights']; 

如果我打印它,它将打印正确的整数。 然而,要获得首飞FLIGHTNUMBER,你需要做的是这样的:

$flightnumber = $jsonDecode['AirportBoardsResult']['arrivals']['flights']['0']['ident']; 

其中“0”是第一次飞行,“1”是第二等... 我试着创建一个for循环来获取所有到达的flightnumber,这里的代码:

$initialCode = $jsonDecode['AirportBoardsResult']['arrivals']['flights']; 

for($arrivalInt = $arrivals; $arrivalInt > 0; $arrivalInt--) { 
    $flightnumbers = $initialCode . $arrivalInt . 'ident'; 
    echo $flightnumbers; 
} 

但这似乎并不奏效。我试图使用array_push在最后添加$ arrivalInt和'ident',但是没有。我试图做这样的:

for($arrivalInt = $arrivals; $arrivalInt > 0; $arrivalInt--) { 
    $flightnumbers = $initialCode . "[" . "'" . $arrivalInt . "'" . "]" . "[" . "'" . "ident" . "'" . "]"; 
    echo $flightnumbers; 
} 

但相同的结果:(结果我得到的是$ initialCode的只是回声

基本上,我只是想将参数添加到json_decode结束。 。

任何帮助被赞赏:)

+0

我想你好想参数 –

+0

$抵港= $ jsonDecode [ 'AirportBoardsResult'] [ '到达'] [ '飞行']; –

+0

我想将参数['$ arrivalInt']添加到$ jsonDecode的末尾,基本上将变量或整数的数据添加到$ jsonDecode的末尾 – RAZERZ

回答

0

感谢@ jh1711的答案!

我应该用foreach循环,而不是像这样:

foreach($initialCode as $flight) { 
    $flightnumber = $flight['ident']; 
    echo $flightnumber; 
}