Hola,
Veamos, PHP no interpreta como codigo el texto de las variables. Para eso tendrias que usar eval() (
www.php.net/eval).
O sino, plantearlo como si el contenido de la variable sea una plantilla, y reemplazar la cadena '<?=$prefijo?>' por el valor de $prefijo (con un simple stre_replace()).
Saludos.