Capa Motor de Templates Capa controlador

Funciones de smarty mas usadas en php


Estas son las funciones de smarty mas usadas por los controladores para la comunicación con la capa vista:
  1. Display
  2. Assign

1) Display: esta función se encarga de llamar un template y mostrarlo.
Ejemplo: supongamos que tenemos un template llamado example_display.tpl (que se encuentra en la ruta work/templates/t_dark/example_display.tpl) con la siguiente información:

<html>
<head>
</head>
<body>
Hello world
</body>
</html>

Y deseamos mostrarlo desde el controlador example_display.php en la ruta work/example_display.php; en este caso solo debemos usar la función display de este modo:

<?php

require('configs/include.php');

class 
c_example_display extends super_controller {

    public function 
display()
    {
        
$this->engine->display('example_display.tpl');
    }
    
    public function 
run()
    {
        
$this->display();
    }
}

$call = new c_example_display();
$call->run();

?>

Luego al ejecutar desde el navegador el archivo work/example_display.php veríamos el hola mundo

2) Assign: esta función pasa información del controlador al template, se puede pasar cualquier tipo de variable, sea arreglo, objeto, un string, un número entre otros.
Ejemplo: deseamos pasar la suma de 2 números para mostrarla en pantalla, creamos el controlador example4.php en la ruta work/example_assign.php

<?php

require('configs/include.php');

class 
c_example_assign extends super_controller {

    public function 
display()
    {
        
$num1=6;
        
$num2=7;

        
$this->engine->assign('total',$num1+$num2);
        
$this->engine->display('example_assign.tpl');
    }
    
    public function 
run()
    {
        
$this->display();
    }
}

$call = new c_example_assign();
$call->run();

?>

Luego en el template example_assign.tpl (en la ruta work/templates/t_dark/example_assign.tpl), podríamos mostrar el valor usando la sintaxis de smarty así:

<html>
<head>
</head>
<body>
{$total}
</body>
</html>

Luego al ejecutar desde el navegador el archivo work/example_assign.php veríamos el número 13
Capa Motor de Templates Capa controlador