1 00:00:00,000 --> 00:00:00,170 2 00:00:00,170 --> 00:00:03,090 >> SPEAKER: Pojďme zlepšit kurzy Hlavní strana tím, že sami sebe 3 00:00:03,090 --> 00:00:06,610 zajistit vlastní tituly pro každý z nich stránky, tak, že každý z nich je 4 00:00:06,610 --> 00:00:08,780 ne, prostě, CS50. 5 00:00:08,780 --> 00:00:12,550 Chcete-li to provést, pojďme zavést pár funkce, jeden s názvem Render záhlaví 6 00:00:12,550 --> 00:00:16,410 a jeden s názvem Render zápatí, že místo Vyžadovat Sám bude trvat 7 00:00:16,410 --> 00:00:19,330 Péče o poskytování našich záhlaví a zápatí stránky. 8 00:00:19,330 --> 00:00:20,280 Pojďme se podívat. 9 00:00:20,280 --> 00:00:24,490 >> Uvnitř index.php teď, oznámení, že Jsem vyžaduje nový soubor s názvem 10 00:00:24,490 --> 00:00:26,070 Helpers.php. 11 00:00:26,070 --> 00:00:28,910 Je to tam, že moje dvě funkce budou definovány. 12 00:00:28,910 --> 00:00:32,960 Pod tím si všimněte, že jsem teď volá že funkce Render záhlaví. 13 00:00:32,960 --> 00:00:34,830 A já jsem kolem v argumentu. 14 00:00:34,830 --> 00:00:39,040 >> Typ tohoto argumentu se jeví pole, které v PHP je označován 15 00:00:39,040 --> 00:00:40,370 s hranatých závorkách. 16 00:00:40,370 --> 00:00:44,210 Zejména, toto pole je asociativní pole, pokud to 17 00:00:44,210 --> 00:00:49,620 sdružuje klíč, jako je název, s hodnoty, jako CS50, spíše než se spoléhat 18 00:00:49,620 --> 00:00:51,570 pouze na základě číselných indexů. 19 00:00:51,570 --> 00:00:53,820 Níže že nyní máme můj neuspořádaný seznam. 20 00:00:53,820 --> 00:00:57,180 Ale pod tím máme výzvu k tomu, aby Zápatí, další funkce 21 00:00:57,180 --> 00:00:59,980 to je pravděpodobně definován v Helpers.php. 22 00:00:59,980 --> 00:01:01,500 >> Pojďme se podívat tam teď. 23 00:01:01,500 --> 00:01:06,760 V Helpers.php, všimněte si, že mám, samozřejmě, že funkce Render zápatí 24 00:01:06,760 --> 00:01:11,100 jejichž smyslem života je zřejmě přijmout jako svůj argument pole 25 00:01:11,100 --> 00:01:12,130 volal dat. 26 00:01:12,130 --> 00:01:15,870 Teď, když uživatel neposkytuje explicitní pole, skutečnost, že je 27 00:01:15,870 --> 00:01:20,610 rovnítko následované prázdným náměstí závorky znamená, že výchozí hodnota 28 00:01:20,610 --> 00:01:23,410 dat bude prostě prázdné pole. 29 00:01:23,410 --> 00:01:27,670 >> Uvnitř Render zápatí, všimněte si, že jsem volání funkce s názvem Extract. 30 00:01:27,670 --> 00:01:32,170 Extrakt se asociativní pole, jako Údaje v tomto případě, a pro všechny 31 00:01:32,170 --> 00:01:37,060 klíč v tom, že se změní, že klíč do lokální proměnná se stejným názvem. 32 00:01:37,060 --> 00:01:41,640 Takže pokud to asociativní pole měl klíč s názvem Foo, extrakt by se zajistilo, že 33 00:01:41,640 --> 00:01:45,680 nyní máme lokální proměnnou pojmenovanou znak dolaru Foo, jehož hodnota je 34 00:01:45,680 --> 00:01:48,140 stejně jako to bylo v tom, že asociativní pole. 35 00:01:48,140 --> 00:01:52,890 >> Konečně, říkám Vyžadovat Footer.php, který jako stranou, vypadá 36 00:01:52,890 --> 00:01:54,900 prostě se mi to. 37 00:01:54,900 --> 00:01:59,390 Nyní, v roce Helpers.php, všimněte si, že jsme také Render záhlaví, jehož 38 00:01:59,390 --> 00:02:02,610 argument je stejný, pole volal, jehož data výchozí 39 00:02:02,610 --> 00:02:04,380 hodnota je prázdná pole. 40 00:02:04,380 --> 00:02:07,060 Pak nazýváme extrahovat opět, jako předtím. 41 00:02:07,060 --> 00:02:12,130 A pak budeme požadovat Header.php, Obsah Čí jsou teď tohle. 42 00:02:12,130 --> 00:02:16,980 >> Uvnitř Header.php, všimněte si, že jsme již mají pevný kódované titul. 43 00:02:16,980 --> 00:02:19,720 A nyní máme tag H1, stejně. 44 00:02:19,720 --> 00:02:24,030 Konkrétně, hodnota názvu bude bez ohledu na hodnotu 45 00:02:24,030 --> 00:02:26,750 lokální proměnná s názvem Hlava je. 46 00:02:26,750 --> 00:02:31,800 Po absolvování jej do funkce PHP tzv. HTML Speciální Znaky, jedeme 47 00:02:31,800 --> 00:02:36,560 získat tuto návratovou hodnotu, a pak zapojte jej do HTML jsem nevychází 48 00:02:36,560 --> 00:02:39,430 o způsob, jak tuto funkci, s názvem Echo. 49 00:02:39,430 --> 00:02:43,580 >> Opravdu, je to zkratka pro zápis volání funkce, která by jinak mohla 50 00:02:43,580 --> 00:02:44,780 vypadat takto. 51 00:02:44,780 --> 00:02:49,010 Ale je to mnohem čistší, prostě psát otevřený držák otazník rovná 52 00:02:49,010 --> 00:02:51,400 podepsat, aniž by se zmínil PHP. 53 00:02:51,400 --> 00:02:56,260 Já jsem teď chystá udělat stejnou vnitřní že H1 tag, takže v konečném důsledku, pokud 54 00:02:56,260 --> 00:03:00,520 uživatel přechází k mému Render funkce záhlaví asociativní pole, uvnitř 55 00:03:00,520 --> 00:03:05,310 který je klíčový tzv. hlava, která klíč asociativní pole bude stát 56 00:03:05,310 --> 00:03:07,870 lokální proměnná s názvem znak dolaru Název. 57 00:03:07,870 --> 00:03:12,130 >> Budeme pak předat tento znak dolaru Název proměnná pro tuto funkci, HTML 58 00:03:12,130 --> 00:03:13,240 Speciální znaků. 59 00:03:13,240 --> 00:03:16,500 A právě v případě, že je nějaký potenciálně nebezpečné znaky 60 00:03:16,500 --> 00:03:20,500 tam, stejně jako ampersandy nebo jiné takové symboly, HTML Speciální Znaky bude 61 00:03:20,500 --> 00:03:23,140 Ujistěte se, že oni jsou poskytnuté bezpečně na stránce. 62 00:03:23,140 --> 00:03:26,420 A pomocí otevřeného držák otázku označit rovnítko, že jsem doslova 63 00:03:26,420 --> 00:03:30,080 substitucí ve v této části stránky bez ohledu na návratová hodnota 64 00:03:30,080 --> 00:03:32,050 z HTML Chars je. 65 00:03:32,050 --> 00:03:36,450 >> Mezitím, v Lectures.php, I mají novou hodnotu hlavy. 66 00:03:36,450 --> 00:03:38,330 Ne CS50, ale přednášky. 67 00:03:38,330 --> 00:03:41,590 V Week0.php, mám hodnoty v týdnu 0. 68 00:03:41,590 --> 00:03:45,560 A v Week1.php, mám hodnotu 1 týdne. 69 00:03:45,560 --> 00:03:48,790 Takže na konci dne, má stránka vypadá docela jako to udělal předtím. 70 00:03:48,790 --> 00:03:52,090 Ale my jsme teď dostali hodně, mnohem lepší provedení. 71 00:03:52,090 --> 00:03:54,240