vsprintf o sprintf con argumentos con nombre, o análisis simple de plantillas en PHP

Estoy buscando una manera de usar argumentos con nombre parasprintf oprintf.

Ejemplo

sprintf(
  'Last time logged in was %hours hours, 
   %minutes minutes, %seconds seconds ago'
  ,$hours,$minutes, $seconds
);

o víavsprintf y una matriz asociativa.

He encontrado algunos ejemplos de codificación aquí

function sprintfn ($format, array $args = array())

http: //php.net/manual/de/function.sprintf.ph

y aqu

function vnsprintf( $format, array $data)

http: //php.net/manual/de/function.vsprintf.ph

where la gente escribió sus propias soluciones.

Pero mi pregunta es, ¿existe tal vez una solución PHP estándar para lograr esto o hay otra forma, tal vez con una plantilla de PHP simple proporcionada por PEAR, que pueda lograr esto si me apego al PHP estándar?

Gracias por cualquier ayuda

Respuestas a la pregunta(9)

Su respuesta a la pregunta