使用应用程序的API,我可以将数据检索为JSON并将其放入数组中。从嵌套数组中检索值
$json = file_get_contents($url);
$obj = json_decode($json);
print_r($obj);
当我打印阵列,我看到:
stdClass Object(
[metadataList] = > stdClass Object(
[metadata] = > Array(
[0] = > stdClass Object([metadataName] = > category [metadataValue] = > RECIPES)
[1] = > stdClass Object([metadataName] = > title [metadataValue] = > Easy Sugar Cookies)
)
)
)
我需要设置一个变量等于标题元数据值(“易糖饼干”),但我遇到了一些麻烦。
这里是我到目前为止,但我没有任何运气搞清楚如何指定特定的metadataValue键,因为在数组中有多个。
$title = array_search('description',($obj->{'metadataList'}->{'metadata'}));
如果我没有弄错,'array_search'不会帮助你,因为那个字符串在一个对象中。 – 2012-02-28 14:56:55
你的意思是获得标题价值? – xdazz 2012-02-28 14:57:58
所以你想要那个价值? ..或者你是否需要所有可能是标题的值? '$ obj-> metadataList->元数据[1] - > metadataValue'(直接) 或(昂贵的) '的foreach($ obj-> metadataList->元数据作为$甲基) { \t if($ meta-> metadatavalue == ... }' – Gavin 2012-02-28 15:02:31