PHP: passare i dati ai template delle view

PHP: passare i dati ai template delle view

In PHP possiamo passare i dati ai template delle view in modo molto semplice.

Non solo possiamo includere il file del template ma anche passargli i relativi dati tramite un array associativo da cui verranno estratte le variabili rilevanti:


define('VIEWPATH', $_SERVER['DOCUMENT_ROOT'] . '/views/');

function get_template_part($name = '', $data = [] ) {
    if(count($data) > 0) {
        extract($data);
    }
    if(file_exists(VIEWPATH . $name . '.php')) {    
        include(VIEWPATH . $name . '.php');
    }    
}

Usiamo la funzione in questo modo:


get_template_part('home', ['test' => 'Hello world']);

Nel template avremo:


<!-- /views/home.php -->
<p><?php echo $test; ?></p>

E otterremo il seguente output finale:


<!-- /views/home.php -->
<p>Hello world</p>

Torna su