Debes concatenar dicha variable ..
ó .. usar comillas -DOBLES- para que PHP interprete $variable y le otorgue su valor ..
(a todo esto .. se supone q $sub se lo pasas a tu función por parámetor o declarando como global $sub .. ¿es así? .. sinó, el ambito de las variables no afectará a esa en concreto si está fuera de tu función ..)
Un saludo,