>> SPEAKER: Cerchiamo di migliorare i corsi homepage permettendo a noi stessi di
fornire titoli personalizzati per ciascuno di questi pagine, in modo che ciascuno di essi è
non, semplicemente, CS50.
Per fare questo, cerchiamo di implementare un paio di funzioni, uno chiamato Render Header
e uno chiamato Render piè di pagina, che invece di Richiedono solo avrà
cura del rendering della nostra intestazioni e piè di pagina della pagina.
Diamo uno sguardo.
>> All'interno di index.php ora, si noti che Sto richiedendo un nuovo file chiamato
Helpers.php.
E 'lì che i miei due funzioni saranno definiti.
Sotto questo, noto che ora sto chiamando tale funzione Render intestazione.
E sto passando un argomento.
>> Il tipo di tale argomento sembra essere una matrice, che è indicata in PHP
con parentesi quadre.
In particolare, questa matrice è un array associativo in quanto
associa una chiave, come titolo, con valore, come il CS50, anziché affidarsi
su indici numerici da solo.
Qui di seguito che ora abbiamo la mia lista non ordinata.
Ma sotto, abbiamo una chiamata al rendering Piè di pagina, l'altra funzione
che è presumibilmente definita in Helpers.php.
>> Diamo uno sguardo adesso.
In Helpers.php, notare che ho, infatti, che la funzione Render Footer
il cui scopo nella vita è apparentemente prendere come argomento un array
chiamato Data.
Ora, se l'utente non fornisce un matrice esplicita, il fatto che non c'è
un segno di uguale seguito da piazza vuota parentesi significa che il valore predefinito
dei dati sarà semplicemente un array vuoto.
>> All'interno di Render piè di pagina, accorgo che sto chiamare una funzione chiamata Extract.
Estratto prende un array associativo, come I dati in questo caso, e per qualsiasi
chiave in esso, che si trasforma in una chiave variabile locale con lo stesso nome.
Quindi, se questo array associativo aveva una chiave chiamato Foo, estratto dovrebbe garantire che
ora abbiamo una variabile locale denominata segno di dollaro Foo, il cui valore è il
stesso che è stato fatto che array associativo.
>> Infine, mi chiamo Richiedi footer.php, che per inciso, sembra
semplicemente come questo.
Ora, tornando in Helpers.php, notare che abbiamo anche Render intestazione, la cui
argomento è lo stesso, un array chiamato Data la cui impostazione predefinita
valore è un array vuoto.
Abbiamo poi chiamare di nuovo estratto, come prima.
E poi abbiamo bisogno header.php, i cui contenuti sono ora questo.
>> All'interno di header.php, notare che non hanno più un titolo codificato duro.
Ed ora abbiamo un tag H1, pure.
In particolare, il valore del titolo sta per essere qualunque sia il valore di
la variabile locale denominata Title è.
Dopo il passaggio ad una funzione PHP chiamato HTML Special Chars, stiamo andando
Per determinare tale valore di ritorno, e poi collegarlo al codice HTML che sto output
da un modo di questa funzione, chiamato Echo.
>> Davvero, questo è notazione abbreviata per una chiamata di funzione che potrebbero altrimenti
simile a questa.
Ma è molto più pulito, semplicemente, di scrivere parentesi aperta punto interrogativo pari
segno, senza neppure menzionare PHP.
Ora sto andando a fare lo stesso all'interno di che tag H1 in modo che alla fine, se la
utente passa alla mia funzione Render Header un array associativo, all'interno
dei quali è una chiave denominata titolo, che la chiave di array associativo diventerà una
variabile locale chiamata simbolo del dollaro titolo.
>> Ci sarà poi passare che il segno del dollaro Titolo variabile a questa funzione, HTML
Caratteri speciali.
E solo nel caso ci sia qualche potenzialmente personaggi pericolosi in
lì, come e commerciali, o altre simboli, HTML Special Chars farà
Assicurarsi che stanno resi sicurezza sulla pagina.
E utilizzando Domanda aperta staffa segnare segno di uguale, io sono letteralmente
sostituendo a quella parte del Pagina qualunque sia il valore di ritorno
di HTML Chars è.
>> Nel frattempo, in Lectures.php, I avere un nuovo valore per il titolo.
Non CS50, ma Lectures.
In Week0.php, ho un valore di settimana 0.
E in Week1.php, ho un valore di 1 settimana.
Così, alla fine della giornata, mia pagina sembra abbastanza come ha fatto prima.
Ma ora abbiamo ottenuto un molto, molto meglio del design.