Echo JSON数组特定元素
问题描述:
我对如何在我的JSON数组中回显特定元素感到困惑。Echo JSON数组特定元素
在时间序列(1分钟)下,我想输出1.打开。为了给我实际的价值。我只能输出整个数组。
而且,我使用WordPress的。
这里是我使用的代码:
$request = wp_remote_get('https://www.alphavantage.co/query?function=TIME_SERIES_INTRADAY&symbol=MSFT&interval=1min&apikey=demo');
if(is_wp_error($request)) {
\t return false; // Bail early
}
$body = wp_remote_retrieve_body($request);
$data = json_decode($body, true);
echo $body;
答
你得到了数组,你只需要遍历它。
//...
$data = json_decode($body, true);
foreach ($data['Time Series (1min)'] as $date => $row) {
echo $date.' => '.$row['1. open'].'<br>';
}
它有点棘手,如果你只想要一个值作为其不是最大的结构,日期是关键。但是你可以使用array_values()函数来解决这个问题。
$min = array_values($data['Time Series (1min)']);
echo $min[0]['1. open']; //84.2000
+0
哇,它的工作!你还可以告诉我,我只能回应第一个实例,而不是循环遍历所有事件? – Yousuf
+0
np,请参阅编辑... –
答
不知道太多关于WordPress但认为你的问题是关系到阅读有空格键JSON,你需要使用括号内为这个目的查看使用$.getJSON
阅读您提供的网址演示下方从响应
$.getJSON('https://www.alphavantage.co/query?function=TIME_SERIES_INTRADAY&symbol=MSFT&interval=1min&apikey=demo').success(function(response) {
var timeline = response['Time Series (1min)'];
for (var i in timeline) {
console.log(timeline[i]["1. open"]);
}
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
打印键
1. open
这是如何关系到'javascript'或'jquery'? –我不知道。我是编码等新手。他们是推荐的标签,所以我按下了它们。 – Yousuf
我会说,它是如何与wordpress @MatiasCicero –