Hola,
PHP no puede mandar SMS directamente, de la misma forma que no envia emails directamente. Para enviar un email se usa un servidor externo, y PHP se comunica con ese servidor.
Lo mismo se puede hacer con los SMS. Muchas empresas dan servicios de SMS (tanto para enviar SMS normales, claves de activacion, recepcion de mensajes como en la tele, ...) y ofrecen un interfaz al que se puede acceder mediante PHP. Y mediante ese interfaz puedes mandar o recibir mensajes desde ese servicio.
Tambien hay empresas de hosting que añaden el servicio de envio de SMS en sus alojamientos (por ejemplo
www.arsys.es ).
Saludos.