如何从pinterestoauthapiphp中回显数组数据


how to echo array data from pinterest oauth api php

我正试图使用oauthapi从pinterest获取用户配置文件。用户数据代码:

$me = $pinterest->users->me(array(
'fields' => 'username,first_name,last_name,image[large]'
));

和回波结果:

echo $me;

输出如下:

{"id":"195414208739840616","username":"rajivsharma033","first_name":"Rajiv","last_name":"Sharma","bio":null,"created_at":null,"counts":null,"image":{"large":{"url":"https:'/'/s-media-cache-ak0.pinimg.com'/avatars'/rajivsharma033_1459712414_280.jpg","width":280,"height":280}}}

现在我想把这个结果作为

id="195414208739840616"
username="rajivsharma033"
first_name="Rajiv"

等等。。。请帮帮我。

由于您正在获取json数据,因此需要使用json_decode():-

   <?php
    $me = '{"id":"195414208739840616","username":"rajivsharma033","first_name":"Rajiv","last_name":"Sharma","bio":null,"created_at":null,"counts":null,"image":{"large":{"url":"https:'/'/s-media-cache-ak0.pinimg.com'/avatars'/rajivsharma033_1459712414_280.jpg","width":280,"height":280}}}';
    $array_data = json_decode($me); 
    echo "<pre/>";print_r($array_data);
    foreach ($array_data as $key=>$value){
        if($key == 'image'){
            echo $key. " url is=" . $value->large->url .'<br/>';
        }else{
            echo $key. "=" . $value .'<br/>';
        }
    }

我会使用两次foreach:来解决它

$a = json_decode($me);
 foreach ($a as $key=>$value){
echo $key.'="'.$value.'"<br/>';
}
foreach ($a['image']['large'] as $key=>value){
 echo 'image-large-'$key.'="'.$value.'"<br/>';
}

或者,您可以递归地执行以下操作:

function echojson($string=''){
 $a = json_decode($me);
 foreach ($a as $key=>$value){
  if (is_array($value)) echojson($string.'-'.$key);
  else
  echo $string.$key.'="'.$value.'"<br/>';
 }
}