下面的json数据对象是自定义Google搜索API请求返回的内容。我需要提取每个“url”元素并将它们放入一个数组中(使用PHP)。
myArray = {url1,url2,url3等...}
如何?
data = '{
"responseData":
{
"results":
[
{
//etc
}
]
}
答案 0 :(得分:2)
我说你有JSON字符串吗?使用json_decode对其进行解码。之后你可以使用
array_map(function($x){
return $x->url;
},$var->responceData->results);
(对于匿名函数需要PHP 5.3,如果使用PHP5.2或更早版本,则不能使用匿名函数)
对于更高版本:
function smth($x){
return $x->url;
}
array_map('smth',$var->responceData->results);
答案 1 :(得分:0)
您可以使用json_decode
获取与您的JSON相对应的数组,然后像对普通数组那样进行分析。
答案 2 :(得分:0)
尝试使用:
$myObject=json_decode($myJSONstring);
这是reference。
然后做:
$urlArray=array();
foreach($myObject->responseData->results as $myResult) {
foreach($myResult as $myAttribute => $myValue) {
$urlArray[] = $myValue;
}
}
$ urlArray将是您正在寻找的。 p>
答案 3 :(得分:0)
您可能需要阅读json_decode