Capítulo 8. Custom Functions

Tabla de contenidos
{assign}
{counter}
cycle
{debug}
{eval}
{fetch}
{html_checkboxes}
{html_image}
{html_options}
{html_radios}
{html_select_date}
{html_select_time}
{html_table}
math
{mailto}
{popup_init}
popup
{textformat}

Smarty viene con varias funciones personalizadas que usted puede usar en sus templates.

{assign}

Nombre del AtributoTipoRequeridoDefaultDescripción
varstringSin/aEl nombre de la variable que esta ganando el valor
valuestringSin/aEl valor que esta siendo dado

{assign} es usado para definir valores a las variables de template durante la ejecución del template.

Ejemplo 8-1. {assign}

{assign var="name" value="Bob"}

The value of $name is {$name}.

Salida del ejemplo de arriba:

The value of $name is Bob.

Ejemplo 8-2. Accesando variables desde un script de PHP. {assign}

Puedes accesar {assign} variables desde php usando get_template_vars(). sin embargo, las variables solo estan disponibles despues/durante la ejecución del template como en el siguiente ejemplo

{* index.tpl *}
{assign var="foo" value="Smarty"}
<?php

// this will output nothing as the template has not been executed
echo $smarty->get_template_vars('foo');

// fetch the template to a dead variable
$dead $smarty->fetch('index.tpl');

// this will output 'smarty' as the template has been executed
echo $smarty->get_template_vars('foo');

$smarty->assign('foo','Even smarter');

// this will output 'Even smarter'
echo $smarty->get_template_vars('foo');

?>

La siguiente función optionally también puede asignar variables al template.

{capture}, {include}, {include_php}, {insert}, {counter}, {cycle}, {eval}, {fetch}, {math}, {textformat}

Ver también assign() y get_template_vars().