file_get_contents con espacios en URL

Tengo un problema en el que incluso si reemplazo los espacios a% 20 y obtengo este contenido, la URL final que obtiene el navegador convierte el "% 20" en "% 2520"

Aquí está mi código, ¿alguna sugerencia para que esto funcione? parece fácil pero estoy atascado: /

<?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;
?>

si vas ahttp: //webservices.lyrdb.com/lookup.php? q = red% 20hot% 20chili% 20peppers & for = fullt El resultado debería generar una lista de códigos de letras.

Cuando voy a mi sitio web /? Song = red hot chili peppers, también convierte espacios en% 20 's, pero si parece que el navegador convierte los%' s en% 25.

¿Alguien me puede ayudar

Respuestas a la pregunta(2)

Su respuesta a la pregunta