file_get_contents com espaços no URL

Tenho um problema em que, mesmo que eu substitua os espaços para% 20 e obtenha esse conteúdo, o URL final que o navegador obtém transforma o "% 20" em "% 2520"

Aqui está o meu código, alguma sugestão para que isso funcione? parece fácil, mas estou preso: /

<?php
//$_GET['song'] will contain a song name with spaces
$song = str_replace(array("%20", "&", "?" , "/"), array(" ", "", "", ""), $_GET['song']);

// I use this to check how the GET 'song' looks after the str_replace
$list = "http://www.lyrdb.com/lookup.php?q=" . $song . "&for=fullt";
echo "list url is " . $list . "<hr>";

$content = file_get_contents("http://www.lyrdb.com/lookup.php?q=" . str_replace(" ", "%20", $song) . "&for=fullt");

echo $content;
?>

se você vai parahttp: //webservices.lyrdb.com/lookup.php? q = red% 20hot% 20chili% 20peppers & for = fullt O resultado deve gerar uma lista de códigos de letr

Quando vou ao meu site /? Song = red hot chili peppers, ele também converte espaços em% 20 's, mas se parece que o navegador converte o%' s em% 25.

Alguém pode me ajudar

questionAnswers(2)

yourAnswerToTheQuestion