{eval}

Nombre del AtributoTipoRequeridoDefaultDescripción
varmixedSin/avariable (o cadena) para evaluar
assignstringNon/aLa variable del template que recibirá la salida

{eval} es usado para evaluar una variable como de template. Esto puede ser usado para cosas como incrustar tags(etiquetas)/variables del template dentro de las variables o tags(etiquetas)/variables dentro de las variables de un archivo de configuración.

Si usted indica el atributo especial "assign", la salida de la función eval se ira para esta variable de template en vez de aparecer en el template.

Nota Técnica: Al evaluar las variables son tratas igual que el template. Ellas sigen el mismo funcionamiento para escape y seguridad tal como si ellas fueran templates.

Nota Técnica: Las variables evaluadas son compiladas en cada invocación, las vesiones compiladas no son salvas. Sin embargo, si usted tiene activado el cache, la salida se va a fijar en la cache junto con el resto del template.

Ejemplo 8-5. {eval}

setup.conf
   ----------

   emphstart = <strong>
   emphend = </strong>
   title = Welcome to {$company}'s home page!
   ErrorCity = You must supply a {#emphstart#}city{#emphend#}.
   ErrorState = You must supply a {#emphstart#}state{#emphend#}.

Where index.tpl is:

{config_load file="setup.conf"}

   {eval var=$foo}
   {eval var=#title#}
   {eval var=#ErrorCity#}
   {eval var=#ErrorState# assign="state_error"}
   {$state_error}

La salida del ejemplo de arriba:

This is the contents of foo.
   Welcome to Foobar Pub & Grill's home page!
   You must supply a <strong>city</strong>.
   You must supply a <strong>state</strong>.