我想连接最后一个fm API并从JSON文件中提取信息。
示例文件:[Last FM API JSON File] [1]
在我的php文件中,我通过以下代码获得了正确的信息:
<?$get = file_get_contents('http://ws.audioscrobbler.com/2.0/?
method=artist.getinfo&artist=Ed
Sheeran&api_key=63692beaaf8ba794a541bca291234cd3&format=json');
$get = json_decode($get);
foreach($get->artist->tags->tag as $tags) { $thetag = (array) $thetag;?>
<? echo $thetag['name'];?>
<?} ?>
目前,这将回显该艺术家的每个标签,例如:轻松聆听和污垢
我想知道有没有办法创建一个包含$ thetag的字符串,同时在中间加一个逗号?
$newstring = "easy listening, grime"
e.t.c
我的计划是创建字符串,然后使用php代码搜索我的数据库并显示标记列包含任何这些标记的记录。知道怎么可能吗?
[1]:http://ws.audioscrobbler.com/2.0/?method=artist.getinfo&artist=Ed Sheeran&amp; api_key = 63692beaaf8ba794a541bca291234cd3&amp; format = json
答案 0 :(得分:0)
您可以将JSON字符串解析为数组。然后使用array_map
函数迭代$array['artist']['tags']['tag']
数组,只获取name
个值。
// $json contains JSON string from API response to ws.audioscrobbler.com.
$array = json_decode($json, true);
$tags = '';
if (!empty($array['artist']['tags']['tag'])) {
$tags = array_map(
function($tag) {
return isset($tag['name']) ? $tag['name'] : '';
}, $array['artist']['tags']['tag']);
$tags = implode(', ', $tags);
}
答案 1 :(得分:0)
这是经过测试和运作的,是一些可能的方法之一......
$(this).find("#current_price").fadeOut("slow", function () {
if (price > p_price) {
$(this).css({color:"green"});
} else {
$(this).css({color:"red"});
}
});