View.php
43 lines
| 1.1 KiB
| text/x-php
|
PhpLexer
|
r0 | <?php | |
class View | |||
{ | |||
function __construct() | |||
{ | |||
} | |||
public function show($name, $vars = array()) | |||
{ | |||
//$name es el nombre de nuestra plantilla, por ej, listado.php | |||
//$vars es el contenedor de nuestras variables, es un arreglo del tipo llave => valor, opcional. | |||
//Traemos una instancia de nuestra clase de configuracion. | |||
$config = Config::singleton(); | |||
//Armamos la ruta a la plantilla | |||
$path = $config->get('viewsFolder') . $name; | |||
//Si no existe el fichero en cuestion, tiramos un 404 | |||
if (file_exists($path) == false) | |||
{ | |||
trigger_error ('Template `' . $path . '` does not exist.', E_USER_NOTICE); | |||
return false; | |||
} | |||
//Si hay variables para asignar, las pasamos una a una. | |||
if(is_array($vars)) | |||
{ | |||
foreach ($vars as $key => $value) | |||
{ | |||
$$key = $value; | |||
} | |||
} | |||
//Finalmente, incluimos la plantilla. | |||
include($path); | |||
} | |||
} | |||
/* | |||
El uso es bastante sencillo: | |||
$vista = new View(); | |||
$vista->show('listado.php', array("nombre" => "Juan")); | |||
*/ | |||
?> |