如何使用PHP访问此Json
我在使用php获取此json的内容时遇到问题如何使用PHP访问此Json,php,json,Php,Json,我在使用php获取此json的内容时遇到问题 {"song":{"returncode":"200","returnmsg":"OK","title":"Despacito Ft. Justin Bieber","artist":"Luis Fonsi, Daddy Yankee","album":"","size":"9193600","url":"http://sami-server.info/Bita6/04.96/Billboard%20Hot%20100%20Singles/Billb
{"song":{"returncode":"200","returnmsg":"OK","title":"Despacito Ft. Justin Bieber","artist":"Luis Fonsi, Daddy Yankee","album":"","size":"9193600","url":"http://sami-server.info/Bita6/04.96/Billboard%20Hot%20100%20Singles/Billboard%20Hot%20100%20Singles/01.%20Luis%20Fonsi%2C%20Daddy%20Yankee%20-%20Despacito%20ft.%20Justin%20Bieber.mp3","time":"1499079781","date":"Jul 3, 2017","source":"","active":"1","albumart":"https://images-na.ssl-images-amazon.com/images/I/5150NxehQtL._AC_US160_.jpg","speed":"21","counter":"850850"}
这是我的函数,它返回json
public function getSong($id) {
$song_url = 'http://databrainz.com/api/data_api_new.cgi?jsoncallback=&id='.$id.'&r=mpl&format=json&_=';
$api = Api::getSpotOn($song_url);
$song = $api->{'song'};
return $song;
}
我想得到它的全部内容
谢谢 在您提供的json示例中,缺少最后一个“}”,json_解码将返回Null,而不包含它,因为它不是有效的json 但是,由于您有getSong方法,以下方法应该可以工作:
$retObject = json_decode(getSong($songId));
$song = $retObject->song;
print_r($song);
echo 'returncode:'.$song->returncode.'<br/>';
echo 'returnmsg:'.$song->returnmsg.'<br/>';
echo 'title:'.$song->title.'<br/>';
echo 'artist:'.$song->artist.'<br/>';
echo 'album:'.$song->album.'<br/>';
echo 'size:'.$song->size.'<br/>';
echo 'url:'.$song->url.'<br/>';
echo 'time:'.$song->time.'<br/>';
echo 'date:'.$song->date.'<br/>';
echo 'source:'.$song->source.'<br/>';
echo 'active:'.$song->active.'<br/>';
echo 'albumart:'.$song->albumart.'<br/>';
echo 'speed:'.$song->speed.'<br/>';
echo 'counter:'.$song->counter.'<br/>';
$retObject=json_解码(getSong($songId));
$song=$retObject->song;
印刷(宋);
回显“returncode:”。$song->returncode。“
”;
回显“returnmsg:”.$song->returnmsg.
;
回声“title:”.$song->title.“
”;
回音“艺人:”.$song->艺人。“
”;
回音“唱片集:”.$song->album.
;
回显“大小:”。$song->size。“
”;
回显“url:”。$song->url。“
”;
回显“时间:”.$song->time.“
”;
回显“日期:”。$song->date。“
”;
echo“source:”.$song->source.“
”;
回显“活动:”。$song->active。“
”;
回音“albumart:”.$song->albumart.
;
回音“速度:”.$song->speed.
;
回声“计数器:”.$song->counter.“
”;
尝试以下操作:
$result = json_decode(
'{
"song": {
"returncode": "200",
"returnmsg": "OK",
"title": "Despacito Ft. Justin Bieber",
"artist": "Luis Fonsi, Daddy Yankee",
"album": "",
"size": "9193600",
"url": "http://sami-server.info/Bita6/04.96/Billboard%20Hot%20100%20Singles/Billboard%20Hot%20100%20Singles/01.%20Luis%20Fonsi%2C%20Daddy%20Yankee%20-%20Despacito%20ft.%20Justin%20Bieber.mp3",
"time": "1499079781",
"date": "Jul 3, 2017",
"source": "",
"active": "1",
"albumart": "https://images-na.ssl-images-amazon.com/images/I/5150NxehQtL._AC_US160_.jpg",
"speed": "21",
"counter": "850850"
}
}'
);
var_dump($result);
echo $result->song->title;
你能发布你尝试过的吗?你编辑过我的问题吗