我正在使用IEX API创建一个股票市场投资组合网站,但是当涉及将数据作为数组检索然后将值存储在表中时,我目前只停留在一个部分。
以下是代码:
$div = file_get_contents("https://api.iextrading.com/1.0/stock/market/batch?symbols=F,AAPL&types=stats&filter=dividendRate");
$div = json_decode($div,TRUE);
foreach($div as $divi => $value)
echo '<br/>'. $divi.' : '. $value;
var_dump($div);
我现在得到的是:
注意:数组转换为字符串 第34行的E:\ XAMPP \ htdocs \ website2 \ test.php
F:数组
注意:数组转换为字符串 第34行的E:\ XAMPP \ htdocs \ website2 \ test.php
AAPL:数组
从var_dump中,我得到了这个:
array(2){[“F”] =&gt; array(1){[“stats”] =&gt; array(1){ [ “dividendRate”] =&GT; float(0.13)}} [“AAPL”] =&gt; array(1){[“stats”] =&gt; array(1){[“dividendRate”] =&gt; float(2.52)}}}
基本上,我希望在表格中显示红利数量而不是单词'array',符号旁边 - 我在这里缺少什么? 谢谢!
答案 0 :(得分:1)
您需要进一步引用正确的数组元素以在循环中获取此值...
foreach($div as $divi => $value) {
echo '<br/>'. $divi.' : '. $value['stats']['dividendRate'];
}
答案 1 :(得分:1)
从var_dump可以看出,这个数据是一个数组数组。当您尝试回显数组时,它只会输出字符串'Array'。指定该数组元素的键以获取实际数据。
foreach($div as $divi => $value) {
echo $divi . ':' . $value['stats']['dividendRate'];
}
这是格式化的数据。
array(2) {
["F"]=> array(1) {
["stats"]=> array(1) {
["dividendRate"]=> float(0.13)
}
}
["AAPL"]=> array(1) {
["stats"]=> array(1) {
["dividendRate"]=> float(2.52)
}
}
}