Qualche esercizio di pratica

Ora facciamo un piccolo esercizio per prendere confidenza con i file, prima di addentrarci nella composizione dei singoli "blocchi di codice" da utilizzare per la realizzazione del progetto.

Ora impareremo a creare ed a utilizzare template differenti.

Apriamo con il nostro editor il file:

View/indexView.php

Alla funzione view_page() modifichiamo il nome del file di template index.php sostituendolo con pratica.php.
Cancelliamo ora le voci di array non più utili (benvenuto, generate, logins) ed aggiungiamo una nuova voce 'ciclo'=>self::ciclo(6).
Il codice di seguito servirà a chiarire le idee:

function view_page(){
        ### stampo la pagina dei contenuti
        KuiperBelt::get_template(
            'pratica.php',
            $GLOBALS["Rgl"],
            array(
                'hello_world'=>'Ciao Mondo!',
                'ciclo'=>self::ciclo(6)',
            )
        );
    }

Ci siamo?... perfetto!

Ora aggiungeremo la nostra funzione ciclo() all'interno della classe IndexView():

class IndexView extends IndexModel {

    # funzione ciclo
     function ciclo($n){
        $hello = array();
        for($i=1;$i <= $n; $i++){
            $hello[$i] = "Ciao Mondo ".$i;
        }
        return $hello;
    }

    # gestione contenuto pagina
    function view_page(){
        ### stampo la pagina dei contenuti
        KuiperBelt::get_template(
            'ciclo.php',
            $GLOBALS["Rgl"],
            array(
                'hello_world'=>'Ciao Mondo!',
                'ciclo'=>self::ciclo(6),
            )
        );
    }
}

Spero che la funzione di esempio risulti semplice :-)

Perfetto, ora prepariamo il template.
Creiamo all'interno della directory Templates il file pratica.php, e compiliamolo come di seguito:

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title> <?php echo $_['hello_world'] ?></title>
    </head>
    <body>
        <?php foreach ($_['ciclo'] as $K => $V): ?>
            <h2>
                <?php echo $V ?>
            </h2>
        <?php endforeach; ?>
    </body>
</html>

Salviamo le modifiche ed aggiorniamo il nostro Browser; dovrebbe aparire qualcosa di simile:

Ciao Mondo 1

Ciao Mondo 2

Ciao Mondo 3

Ciao Mondo 4

Ciao Mondo 5

Ciao Mondo 6

Cosa abbiamo fatto?

  1. Creato una nuova funzione all'interno della View;
  2. Detto alla View di scrivere su di un nuovo template (ciclo.php);
  3. Realizzato un semplice ciclo for (funzione ciclo()) e trasmesso alla funzione view_page();
  4. Inserito all'interno del template un ciclo foreach ed assegnato i valori restituiti all'interno dei relativi tag html;

Semplice Vero?

« Ciao Mondo

Generazione nuova pagina »