我正在使用RPC风格的一些基于JSON的API,并且在通过一些PHP包装器与API交互后,我得到了这个多维数组:
Array
(
[ok] => 1
[taskgroup] => Array
(
[task_1] => Array
(
[id] => task_1
[name] => Task 1
[url] => /tasks/1/
[description] => Lorem ipsum dolor sit amet...
[img] => http://example.net/mypic1442421.png
[related_tasks] => Array
(
[0] => task_18
)
)
[task_2] => Array
(
[id] => task_2
[name] => Task 2
[url] => /tasks/2/
[description] => Lorem ipsum dolor sit amet...
[img] => http://example.net/mypic1442421.png
[related_tasks] => Array
(
[0] => task_9
[1] => task_23
)
)
)
)
我的问题是,如何通过这个多维数组?这种md阵列响应有一些相关的方法吗?更具体地说 - 采取一些可以为这件事带来光明的例子 - 我如何打印所有图像的列表和像taskArray[][task_n][img] - taskArray[][task_n][url]
这样的网址? --task_n可以是任何非连续的字母数字值
我尝试了一些我在这里找到的递归方法,但没有运气,请原谅我再问一遍同样的事情。原谅n00bness。
答案 0 :(得分:0)
通常,该数组将使用以下代码进行处理:
if (!empty($apiResult['OK']) && !empty($apiResult['taskgroup'])) {
foreach ($apiResult['taskGroup'] as $taskId => $task) {
$id = $task['id'];
$img = $task['img'];
$url = $task['url'];
printf("Image: %s, URL: %s\n", $img, $url);
// do some stuff
}
}