我是PHP的新手,我尝试使用API来获取歌词。我的代码有问题,因为没有显示数据,但是没有错误消息出现。这是我的代码:
$url3 = file_get_contents("http://lyric-api.herokuapp.com/api/find/". urlencode($artist)."/". urlencode($nm_track));
$json3 = json_decode($url3, true);
$lyrics = $json3['lyric'];
请查看代码,我只想知道错误在哪里?
答案 0 :(得分:1)
编辑/更新:如果艺术家/歌曲中有空格,则应使用rawurlencode($artist). "/" . rawurlencode($nm_track)
,以便将空格转换为%20
而不是+
为urlencode()
会。
<?php
$artist='queen';
$nm_track='bohemian rhapsody';
echo rawurlencode($artist) . "/" . rawurlencode($nm_track);
$url3 = file_get_contents("http://lyric-api.herokuapp.com/api/find/". rawurlencode($artist). "/" . rawurlencode($nm_track));
$json3 = json_decode($url3, true);
$lyrics = $json3['lyric'];
echo $lyrics;
输出: 这就是现实的生活吗?这只是幻想吗? ...
如果您还想先测试是否有错误(艺术家/歌曲数据不可用),则可以检出元素$json3['err']
。