Pues lo más claro que anda en la vuelta es la información del manual oficial (
http://php.net/sprintf).
sprintf y
printf tienen opciones de formato muy interesantes, pero la realidad es que en un entorno web donde la salida es HTML, normalmente estas opciones de formato no se usan porque los espacios en blanco extra en HTML no se tienen en cuenta.
Pueden usarse también para manipular los tipos de datos, fijate por acá:
http://www.webmasterworld.com/php/3648865.htm
Estos ejemplos son funcionalmente equivalentes:
Código PHP:
$saludo = sprintf("Hola %s", $nombre);
Código PHP:
$saludo = "Hola " . $nombre
Saludos.