SPEAKER: Poďme zlepšiť kurzy Hlavná strana tým, že sami seba zabezpečiť vlastné tituly pre každý z nich stránky, tak, že každý z nich je nie, jednoducho, CS50. Ak to chcete vykonať, poďme zaviesť pár funkcie, jeden s názvom Render záhlavia a jeden s názvom Render päty, že miesto Vyžadovať Sám bude trvať Starostlivosť o poskytovaní našich hlavičky a päty stránky. Poďme sa pozrieť. Vnútri index.php teraz, oznámenia, že Som si vyžaduje nový súbor s názvom Helpers.php. Je to tam, že moje dve funkcie budú definované. Pod tým si všimnite, že som teraz volá že funkcie Render hlavičky. A ja som okolo v argumente. Typ tohto argumentu sa javí pole, ktoré v PHP je označovaný s hranatých zátvorkách. Najmä, toto pole je asociatívne pole, ak to združuje kľúč, ako je názov, s hodnoty, ako CS50, skôr než sa spoliehať iba na základe číselných indexov. Nižšie že teraz máme môj neusporiadaný zoznam. Ale pod tým máme výzvu k tomu, aby Päty, ďalšie funkcie to je pravdepodobne definovaný v Helpers.php. Poďme sa pozrieť tam teraz. V Helpers.php, všimnite si, že mám, samozrejme, že funkcie Render zápätie ktorých zmyslom života je zrejme prijať ako svoj argument pole volal dát. Teraz, keď používateľ neposkytuje explicitné pole, skutočnosť, že je znamienko rovnosti nasledované prázdnym námestí zátvorky znamená, že východisková hodnota dát bude jednoducho prázdne pole. Vnútri Render päty, všimnite si, že som volanie funkcie s názvom Extract. Extrakt sa asociatívne pole, ako Údaje v tomto prípade, a pre všetky kľúč v tom, že sa zmení, že kľúč do lokálna premenná s rovnakým názvom. Takže ak to asociatívne pole mal kľúč s názvom Foo, extrakt by sa zabezpečilo, že teraz máme lokálnu premennú pomenovanú znak dolára Foo, ktorého hodnota je rovnako ako to bolo v tom, že asociatívne pole. Konečne, hovorím Vyžadovať footer.php, ktorý ako stranou, vyzerá proste sa mi to. Teraz, v roku Helpers.php, všimnite si, že sme tiež Render záhlavie, ktorého argument je rovnaký, pole volal, ktorého dáta predvolené hodnota je prázdne polia. Potom nazývame extrahovať opäť, ako predtým. A potom budeme požadovať header.php, Obsah Čí sú teraz toto. Vnútri header.php, všimnite si, že sme už majú pevný kódované titul. A teraz máme tag H1, rovnako. Konkrétne, hodnota názvu bude bez ohľadu na hodnotu lokálna premenná s názvom Hlava je. Po absolvovaní ho do funkcie PHP tzv HTML Špeciálne Znaky, ideme získať túto návratovú hodnotu, a potom zapojte ho do HTML som nevychádza o spôsob, ako túto funkciu, s názvom Echo. Naozaj, je to skratka pre zápis volanie funkcie, ktorá by inak mohla vyzerať takto. Ale je to oveľa čistejšie, jednoducho písať otvorený držiak otáznik rovná podpísať bez toho, aby sa zmienil PHP. Ja som teraz chystá urobiť rovnakú vnútornú že H1 tag, takže v konečnom dôsledku, ak užívateľ prechádza k môjmu Render funkcie záhlavia asociatívne pole, vo vnútri ktorý je kľúčový tzv hlava, ktorá kľúč asociatívne pole bude stáť lokálna premenná s názvom znak dolára Názov. Budeme potom odovzdať tento znak dolára Názov premenná pre túto funkciu, HTML Špeciálne znakov. A práve v prípade, že je nejaký potenciálne nebezpečné znaky tam, rovnako ako ampersand alebo iné takéto symboly, HTML Špeciálne Znaky bude Uistite sa, že oni sú poskytnuté bezpečne na stránke. A pomocou otvoreného držiak otázku označiť znamienko rovnosti, že som doslova substitúciou vo v tejto časti stránky bez ohľadu na návratová hodnota z HTML Chars je. Medzitým, v Lectures.php, Aj majú novú hodnotu hlavy. Nie CS50, ale prednášky. V Week0.php, mám hodnoty v týždni 0. A v Week1.php, mám hodnotu 1 týždňa. Takže na konci dňa, má stránka vyzerá celkom ako to urobil predtým. Ale my sme teraz dostali veľa, oveľa lepšie prevedenie.