Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/neo4j/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 通过API中的JSON数组进行Foreach循环_Php_Arrays_Json_Api - Fatal编程技术网

Php 通过API中的JSON数组进行Foreach循环

Php 通过API中的JSON数组进行Foreach循环,php,arrays,json,api,Php,Arrays,Json,Api,我正在使用IEXAPI创建一个股票市场投资组合网站,但我目前只停留在一个方面,即以数组形式检索数据,然后将值存储在表中 代码如下: $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 a

我正在使用IEXAPI创建一个股票市场投资组合网站,但我目前只停留在一个方面,即以数组形式检索数据,然后将值存储在表中

代码如下:

$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);
$div=文件获取内容(“https://api.iextrading.com/1.0/stock/market/batch?symbols=F,AAPL&types=stats&filter=dividendRate”);
$div=json_decode($div,TRUE);
foreach($div作为$divi=>$value)
回显“
”$divi.“:”$价值 var_dump($div);
我现在得到的是:

注意:中的数组到字符串转换 第34行的E:\XAMPP\htdocs\website2\test.php

F:阵列

注意:中的数组到字符串转换 第34行的E:\XAMPP\htdocs\website2\test.php

AAPL:数组

从var_转储中,我得到以下信息:

数组(2){[“F”]=>数组(1){[“stats”]=>数组(1){ [“dividendRate”]=>float(0.13)}[“AAPL”]=>array(1){[“stats”]=> 数组(1){[“dividendRate”]=>float(2.52)}

本质上,我希望在一个表格中,在符号旁边显示股息金额,而不是“数组”这个词——我这里缺少什么?
谢谢

您需要进一步引用正确的数组元素,以便在循环中获得此值

foreach($div as $divi => $value) {
    echo '<br/>'. $divi.' : '. $value['stats']['dividendRate'];
}
foreach($div作为$divi=>$value){
回显“
”。$divi.:”.$value['stats']['dividendRate']; }
从var_转储中可以看到,此数据是数组的数组。当您尝试回显数组时,它将只输出字符串“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) 
        } 
    } 
}

错误信息非常清楚,不是吗
F
保存一个_数组。您不能简单地
echo
a数组。谢谢!谢谢你的帮助,谢谢!我感谢你的帮助。