Get Smarty

Donate

Paypal

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

math

Nombre del Atributo Tipo Requerido Default Descripción
equation string Si n/a La ecuación a ejecutar
format string No n/a El formato del resultado (sprintf)
var numeric Si n/a Valor de la variable de la ecuación
assign string No n/a Variable de template cuya salida sera asignada
[var ...] numeric Si n/a Valor de la variable de la ecuación

{math} permite diseñar ecuaciones matemáticas dentro del template. Cualquier variable numérica del template puede ser usada en ecuaciones, y el resultado es mostrado en lugar de la etiqueta. Las variables usadas en ecuaciones son pasadas como parámetros, que pueden ser variables de template o valores estáticos. +, -, /, *, abs, ceil, cos, exp, floor, log, log10, max, min, pi, pow, rand, round, sin, sqrt, srans y tan son todos los operadores validos. Verifique la documentación de PHP para mas información acerca de estas funciones matemáticas.

Si usted proporciona el atributo especial "assign", la salida de la función matemática será atribuido a esta variable de template en vez de ser mostrada en el template.

Nota Técnica

{math} es una función de muy alto rendimiento debido a que se puede usar con la función eval() de PHP. Hacer las matemáticas en PHP es mucho mas eficiente, asi en cualquier momento es posible hacer calculos matemáticos en PHP asignarlos a una variable y lanzar los resultados al template. Defínitivamente evite llamadas repetitivas de funciones matemáticas, dentro de los ciclos {section}.

Example 8.19. {math}

Ejemplo a:


   {* $height=4, $width=5 *}

   {math equation="x + y" x=$height y=$width}

  

Salida del ejemplo de arriba:


   9

  

Ejemplo b:


   {* $row_height = 10, $row_width = 20, #col_div# = 2, assigned in template *}

   {math equation="height * width / division"
   height=$row_height
   width=$row_width
   division=#col_div#}

  

Salida del ejemplo de arriba:


   100

  

Ejemplo c:


   {* you can use parenthesis *}

   {math equation="(( x + y ) / z )" x=2 y=10 z=2}

  

Salida del ejemplo de arriba:


   6

  

Ejemplo d:


   {* you can supply a format parameter in sprintf format *}

   {math equation="x + y" x=4.4444 y=5.0000 format="%.2f"}
   
  

Salida del ejemplo de arriba:


   9.44

  

Comments
No comments for this page.

Advertisement

Sponsors [info]

Sponsors