>> DAVID MALAN: Cerchiamo di migliorare del corso homepage un po 'più da
generalizzando tali funzioni, RenderHeader e RenderFooter, in,
molto semplicemente, render perché dopo tutto, erano quasi identici tranne
i loro nomi.
Come fare questo?
Beh, in cima a questo file solo, sotto dove abbiamo bisogno helpers.php, chiamiamolo un
nuova funzione, render, la cui prima l'argomento, diciamo, è il nome
di un modello, un file che è destinata essere collegato in là.
Nel frattempo, il secondo argomento deve rimanere un array associativo, in questo
maiuscole e un array contenente una chiave per titolo il cui valore è qui CS50.
Diamo ora un'occhiata a helpers.php.
>> In helpers.php, ora, di Naturalmente, hanno un solo
funzione definita, rendering.
rendering prende ora due argomenti, che chiameremo modello e dati, il
quest'ultimo di cui valore predefinito è ancora una matrice vuota.
Ma in questa versione di rendering, avviso che ora mi dichiaro una variabile locale
chiamato percorso e assegnare il valore di template, che, per esempio, potrebbe
essere citazione, unquote, "intestazione" e aggiungere a quella stringa. php.
In altre parole, supponiamo per ora che se il nostro modello si chiama intestazione,
allora tale modello sarà attuato in un file chiamato, molto semplicemente,
header.php.
>> Nel frattempo, facciamo un controllo di integrità rapido.
Se questo percorso esiste, che possiamo controllare per mezzo di un file chiamato
file_exists, poi cerchiamo di estrarre l' array associativo chiamato dati in modo che
abbiamo una o più variabili locali portata, e poi lasciare di
esigere che il percorso.
Nel frattempo, helpers.php sembra abbastanza semplicemente simile, esattamente come prima.
>> Ma se ora guardiamo indietro a index.php, notare che nella parte inferiore di tale
file, possiamo analogicamente chiamare rendering, passando come suo
Suola footer argomento.
In questo caso, non abbiamo bisogno di passare in un array associativo in quanto la
modello piè di pagina, richiamo, è proprio questo.
Ma ora abbiamo probabilmente ancor design più pulito perché abbiamo
eliminato le nostre diversamente codice ridondante e consolidate in
solo una funzione, render.