DAVID Malan: Poďme zlepšiť priebeh je Hlavná strana trochu ďalej zovšeobecňovať tieto funkcie, renderHeader a renderFooter, do, jednoducho, robí preto, že po tom všetkom, boli takmer totožné, s výnimkou ich mená. Ako to urobiť? No na vrchole tohto súboru len, pod miestom, kde požadujeme helpers.php, hovorme Nová funkcia, činí, ktorého prvé Argument, povedzme, musí byť názov šablóny, súbor, ktorý znamenal byť zapojený tam. Medzitým sa druhý argument zostávajú asociatívne pole, v tomto prípade, že pole obsahujúce kľúč pre titul, ktorého hodnota je tu CS50. Poďme sa teraz pozrieť na helpers.php. V helpers.php, teraz, o Samozrejme, že majú len jeden funkcia definovaná, činí. robí sa teraz dva argumenty, ktoré zavoláme šablónu a dáta, Ten ktorého východisková hodnota je stále prázdne polia. Ale v tejto verzii omietky, všimnite si, že som teraz vyhlásiť lokálne premenné nazýva cesta a priraďte jej hodnotu šablóna, ktorá, napríklad, mohol byť citát, koniec citátu, "hlavičky" a pripojiť k tejto reťazca. php. Inými slovami, predpokladajme teraz že ak naše šablóna sa nazýva hlavička, potom, že šablóna bude realizovaný v súbore s názvom, jednoducho, header.php. Medzitým, poďme robiť Rýchla kontrola zdravý rozum. Ak existuje, že cesta, ktorú môžeme kontrolu prostredníctvom súboru s názvom file_exists, potom sa poďme výpis asociatívne pole s názvom dáta tak, aby máme jednu alebo viac lokálnych premenných v rozsahu, a potom sa poďme požadovať, aby cestu. Medzitým, helpers.php vyzerá celkom proste takto, presne ako predtým. Ale keď sa teraz pozrieme späť na index.php, Všimnite si, že v spodnej časti, ktorá súbor, môžeme podobne volať render, okolo sa ako jeho Jediným argumentom pätu. V tomto prípade sa nemusíte prejsť v asociatívne pole, pretože zápätie šablóny, odvolanie, je práve tento. Ale teraz máme pravdepodobne aj Čistič konštrukcia, pretože máme eliminovať niektoré z našich inak redundantný kód a konsolidovať do len jedna funkcia, činí.