Smarty Icon

You may use the Smarty logo according to the trademark notice.

Smarty Template Engine Smarty Template Engine

For sponsorship, advertising, news or other inquiries, contact us at:

Sites Using Smarty

Advertisement

Name

register_function() — Registra dinamicamente un plugin de función para un template

Descripción

void register_function(string name,
                       mixed impl,
                       bool cacheable,
                       mixed cache_attrs);

Pase en el template el nombre de la función, seguido por el nombre de la función PHP que implementa esto.

La llamada a la funcion-php impl puede ser:

  1. a una cadena conteniendo el nombre de la función o

  2. un arreglo con la forma array(&$object, $method) con &$object siendo una referencia para un objeto y $method siendo una cadena conteniendo el nombre del método

  3. un arreglo con la forma array(&$class, $method) con $class siendo el nombre de una clase y $method siendo un metodo de esa clase.

cacheable y cache_attrs pueden ser omitidos en la mayoria de los caasos. Vea Controlando modos de Salida Cache de los Plugins para obtener mayores informes.

Example 13.23. register_function()


<?php
$smarty->register_function('date_now', 'print_current_date');

function print_current_date($params, &$smarty)
{
  if(empty($params['format'])) {
    $format = "%b %e, %Y";
  } else {
    $format = $params['format'];
    return strftime($format,time());
  }
}
?>

   

y en el template


{date_now}

{* or to format differently *}
{date_now format="%Y/%m/%d"}


Ver también unregister_function() y Plugin functions.