En cualquier caso, al margen de usar un array (que seguramente sea la mejor opción), sobre tu mensaje original... yo juraría que esto:
No te lo va a evaluar como $n1, $n2, etc. (me refiero a identificarlo como variables, no como texto literal). Para conseguir algo así tienes por ejemplo las
variables variables o la función
eval (usadas convenientemente, claro). Supongo que habrá otras alternativas
Un saludo.