PHP  »  Articoli  »  CakePHP 

CakePHP: il pattern MVC

di: Gabriele Farina     29 Dicembre 2006

Le Viste

Come ultima funzionalità da analizzare abbiamo le viste. Le viste non sono altro che semplici template PHP che servono per visualizzare in HTML i risultati delle azioni svolte dai controller. Le viste sono contenute all'interno della directory app/views.

Ogni azione ha normalmente associata la sua vista specifica che viene renderizzata alla fine dell'esecuzione della funzione. Alla vista viene passata una variabile $data che contiene tutti i dati assegnati dal controller attraverso la funzione set o altri strumenti di assegnazione. Al fine di rendere le viste il meno ripetitive possibili, CakePHP offre la possibilità di utilizzare anche i layout, che sono delle template speciali che vengono applicate automaticamente intorno alle viste in modo che in queste ultime sia contenuto solamente il codice HTML relativo alla parte direttamente interessata dal controller.

In questo modo è possibile specificare header e footer della pagina in un unico file e condividerlo con molte viste in modo che una singola modifica si ripercuota su tutte le template. Vediamo un esempio di layout:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
   <head>
       <title><?php echo $title_for_layout?></title>
   </head>
   <body>
       <div id="header">
           <div id="menu">...</div>
        </div>

        <!-- Qui viene visualizzata la vista -->
       
<?php echo $content_for_layout ?>

       <div id="footer">...</div>
   </body>
</html>

e successivamente un esempio molto semplice di vista per visualizzare degli ipotetici post:

<h1><?php echo $data['Post']['title'] ?></h1>
<p><small><?php echo $data['Post']['author'] ?></small></p>
<p><?php echo $data['Post']['content'] ?></p>

Come possiamo notare la vista specifica solamente la parte strettamente inerente al rendering del contenuto, mentre il resto della pagina è definita dal layout principale, che potrà essere assegnato alla vista utilizzando la proprietà layout del controller eseguito.

Guide PHP

Guida Yii Framework

Come creare applicazioni Web in modo semplice e veloce con il...

Guida Zend Framework

Diventate professionisti dello sviluppo Web. Zend Framework è lo...

Guida Applicazioni Facebook con PHP

Come realizzare un'applicazione per Facebook. Dalle basi della...

Altre guide

Newsletter @PHP

Ogni lunedì, direttamente nella tua e-mail: script, articoli, guide e tutorial su PHP, MySQL e Apache.

Iscriviti alla newsletter

Altre newsletter

Corsi in aula

Corso PHP per Webmaster

11 Giugno 2012 a Milano
Disponibilità: 7 Posti

Corso Google AdWords Base

25 Giugno 2012 a Milano
Disponibilità: 7 Posti

Corso Google AdWords Base

05 Giugno 2012 a Roma
Disponibilità: 7 Posti