Questo dovrebbe funzionare:
Codice PHP:

####### GENERA CODICE ############
$codice "switch(\$p) {\n";

//Aggiunge i casi
while (list(, $links) = each ($arr_str_comp))
{

   
$nomeLinkPUL=str_replace("index.php?p=","",$links);
   
$codice .= "case \"$nomeLinkPUL\": include (\"$dirScelta/$links\");\n";
   
$codice .= "break;\n";

}
//Aggiunge caso default
$codice .= "default: include (\"$dirScelta/0_home.php\");\n";
$codice .= "break;\n";
$codice .= "}\n";
##############################

eval($codice); 
C'erano degli errori di sintassi:
-L'escaping di $p nello switch
-Il caso default si indica solo con default non con case default