Non puoi usare le affermazioni preparate in questo modo. Quando dichiari un segnaposto, evita di fare cose correlate su di essi, lasciandolo al valore segnaposto definizione. Quindi, ad esempio, puoi usarlo in questo modo:
$STH = $DBH->prepare("SELECT songs ,image ,artist,album,r_year
FROM english_fm
WHERE artist REGEXP :artist
GROUP BY artist order by slno");
$STH->bindValue(":artist" , "^[$artist]", PDO::PARAM_STR);