【发布时间】:2016-11-17 22:05:48
【问题描述】:
我目前正在从一家公司的 API 获得 JSON 响应,并将其转换为 PHP 数组,如下所示:
$api_url = file_get_contents('http://example.com');
$api_details = json_decode($api_url, true);
当我在 $api_details 上运行 var_dump 时,我得到了这个:
array(2) {
["metadata"]=>
array(5) {
["iserror"]=>
string(5) "false"
["responsetime"]=>
string(5) "0.00s"
["start"]=>
int(1)
["count"]=>
int(99999)
}
["results"]=>
array(3) {
["first"]=>
int(1)
["result"]=>
array(2) {
[0]=>
array(4) {
["total_visitors"]=>
string(4) "3346"
["visitors"]=>
string(4) "3249"
["rpm"]=>
string(4) "0.07"
["revenue"]=>
string(6) "0.2381"
}
[1]=>
array(4) {
["total_visitors"]=>
string(6) "861809"
["visitors"]=>
string(6) "470581"
["rpm"]=>
string(4) "0.02"
["revenue"]=>
string(7) "13.8072"
}
}
}
}
我正在尝试做两件事,但不知道如何处理多维数组。
我需要检查
metadata > iserror是否为false。如果它不是假的,我想显示一条错误消息并且不继续执行脚本。如果是
false,那么我想循环遍历results > result的结果,并为每个人回显total_visitors、visitors等。
我知道如何从数组中回显数据,我想当数组有多个级别时我会感到困惑。
任何能指出我正确方向的人将不胜感激:)
【问题讨论】:
标签: php arrays json multidimensional-array