1 00:00:00,000 --> 00:00:00,170 2 00:00:00,170 --> 00:00:03,090 >> GŁOŚNIK: Chcę poprawić kursy strona główna pozwalając się do 3 00:00:03,090 --> 00:00:06,610 dostarczyć niestandardowe tytuły dla każdego z tych stron, tak że każda z nich jest 4 00:00:06,610 --> 00:00:08,780 Nie, po prostu, CS50. 5 00:00:08,780 --> 00:00:12,550 Aby to zrobić, niech wdrożyć kilka funkcje, jeden o nazwie Nagłówek Render 6 00:00:12,550 --> 00:00:16,410 i jeden o nazwie Render stopka, że zamiast wymagać będzie sam 7 00:00:16,410 --> 00:00:19,330 troska o świadczenie naszym nagłówki i stopki strony. 8 00:00:19,330 --> 00:00:20,280 Rzućmy okiem. 9 00:00:20,280 --> 00:00:24,490 >> Wewnątrz index.php teraz informacja, że Jestem wymagający nowy plik o nazwie 10 00:00:24,490 --> 00:00:26,070 Helpers.php. 11 00:00:26,070 --> 00:00:28,910 To tam, że moje dwie funkcje zostanie określony. 12 00:00:28,910 --> 00:00:32,960 Poniżej, że zauważysz, że jestem teraz dzwoni że funkcja Render Header. 13 00:00:32,960 --> 00:00:34,830 I olewam argument. 14 00:00:34,830 --> 00:00:39,040 >> Typ W istocie wydaje się Tablica, która jest oznaczona w PHP 15 00:00:39,040 --> 00:00:40,370 w nawiasach kwadratowych. 16 00:00:40,370 --> 00:00:44,210 W szczególności, jest to tablica asocjacyjna o ile 17 00:00:44,210 --> 00:00:49,620 kojarzy klucz, jak tytuł, z wartość, jak CS50, zamiast polegać 18 00:00:49,620 --> 00:00:51,570 na samych wskaźników liczbowych. 19 00:00:51,570 --> 00:00:53,820 Poniżej, że teraz mamy moja nieuporządkowana lista. 20 00:00:53,820 --> 00:00:57,180 Ale poniżej, że mamy połączenie do renderowania Stopka, inna funkcja 21 00:00:57,180 --> 00:00:59,980 który jest prawdopodobnie zdefiniowany w Helpers.php. 22 00:00:59,980 --> 00:01:01,500 >> Weźmy spojrzeć tam teraz. 23 00:01:01,500 --> 00:01:06,760 W Helpers.php, zauważysz, że mam, rzeczywiście, że funkcja Render stopka 24 00:01:06,760 --> 00:01:11,100 którego celem w życiu jest najwyraźniej do podjąć w jako argument tablicę 25 00:01:11,100 --> 00:01:12,130 nazywa danych. 26 00:01:12,130 --> 00:01:15,870 Teraz, jeśli użytkownik nie dostarczy wyraźna tablica, fakt, że nie jest 27 00:01:15,870 --> 00:01:20,610 znak równości, a następnie pusty plac nawiasy oznaczają, że wartość domyślna 28 00:01:20,610 --> 00:01:23,410 danych będzie po prostu pusta tablica. 29 00:01:23,410 --> 00:01:27,670 >> Wewnątrz Render stopka, zauważysz, że jestem wywołanie funkcji o nazwie Extract. 30 00:01:27,670 --> 00:01:32,170 Ekstrakt bierze tablicę asocjacyjną, jak Dane w tym przypadku, i dla każdego 31 00:01:32,170 --> 00:01:37,060 Klucz w tym, okazuje się, że klucz zmienna lokalna o tej samej nazwie. 32 00:01:37,060 --> 00:01:41,640 Więc jeśli to asocjacyjna miał klucz nazwie Foo, by upewnić się, że ekstrakt 33 00:01:41,640 --> 00:01:45,680 teraz mamy lokalną zmienną o nazwie znak dolara Foo, których wartość jest 34 00:01:45,680 --> 00:01:48,140 takie same, jak było w tym asocjacyjna. 35 00:01:48,140 --> 00:01:52,890 >> Wreszcie, wzywam Wymagaj footer.php, który jak na bok, wygląda 36 00:01:52,890 --> 00:01:54,900 po prostu lubię to. 37 00:01:54,900 --> 00:01:59,390 Teraz z powrotem w Helpers.php zauważyć, że mamy także Render Nagłówek, którego 38 00:01:59,390 --> 00:02:02,610 Argument ten jest taki sam, tablica nazywa, których dane domyślne 39 00:02:02,610 --> 00:02:04,380 wartość jest pusta tablica. 40 00:02:04,380 --> 00:02:07,060 Następnie ponownie wywołać Extract, jak wcześniej. 41 00:02:07,060 --> 00:02:12,130 A potem Wymagaj header.php, którego zawartość jest teraz to. 42 00:02:12,130 --> 00:02:16,980 >> Wewnątrz header.php, zauważyć, że nie mają zakodowanego tytuł. 43 00:02:16,980 --> 00:02:19,720 I teraz mamy znacznik H1, jak również. 44 00:02:19,720 --> 00:02:24,030 W szczególności, wartość tytule będzie cokolwiek wartość 45 00:02:24,030 --> 00:02:26,750 zmienna lokalna o nazwie Tytuł jest. 46 00:02:26,750 --> 00:02:31,800 Po przejściu do funkcji PHP nazywa HTML specjalne znaki, będziemy 47 00:02:31,800 --> 00:02:36,560 do otrzymania tej wartości zwracanej, a następnie podłącz go do HTML Jestem wpisywanie 48 00:02:36,560 --> 00:02:39,430 przez drodze tej funkcji nazywa Echo. 49 00:02:39,430 --> 00:02:43,580 >> Naprawdę, to jest skróconym zapisem dla wywołanie funkcji, które mogłyby 50 00:02:43,580 --> 00:02:44,780 wyglądać tak. 51 00:02:44,780 --> 00:02:49,010 Ale jest wiele czystsze, po prostu, aby napisać otwarty nawias równa znak zapytania 52 00:02:49,010 --> 00:02:51,400 podpisania, bez wspominania nawet PHP. 53 00:02:51,400 --> 00:02:56,260 Mam teraz zamiar zrobić to samo wnętrze że zaczep H1 tak że ostatecznie, o ile 54 00:02:56,260 --> 00:03:00,520 Użytkownik przechodzi do mojego nagłówka funkcji renderingu Tablica asocjacyjna, wewnątrz 55 00:03:00,520 --> 00:03:05,310 z jest zwany klucz Tytuł, to Klucz asocjacyjna staną się 56 00:03:05,310 --> 00:03:07,870 zmienna lokalna o nazwie znak dolara tytuł. 57 00:03:07,870 --> 00:03:12,130 >> Będziemy wtedy przekazać, że znak dolara Tytuł zmiennego do tej funkcji, HTML 58 00:03:12,130 --> 00:03:13,240 Znaki specjalne. 59 00:03:13,240 --> 00:03:16,500 I tylko w przypadku, jest jakaś potencjalnie niebezpiecznych znaków 60 00:03:16,500 --> 00:03:20,500 tam, jak Ampersands lub inne takie Symbole, Znaki specjalne HTML będzie 61 00:03:20,500 --> 00:03:23,140 upewnić się, że są one świadczone bezpiecznie na stronie. 62 00:03:23,140 --> 00:03:26,420 I za pomocą wspornika pytanie otwarte zaznaczyć znak równości, jestem dosłownie 63 00:03:26,420 --> 00:03:30,080 Podstawiając w tej części strona co zwraca wartości 64 00:03:30,080 --> 00:03:32,050 Znaki z HTML jest. 65 00:03:32,050 --> 00:03:36,450 >> Tymczasem w Lectures.php, że posiada nową wartość tytułu. 66 00:03:36,450 --> 00:03:38,330 Nie CS50, ale wykłady. 67 00:03:38,330 --> 00:03:41,590 W Week0.php mam wartość tygodniu 0. 68 00:03:41,590 --> 00:03:45,560 W Week1.php mam wartość 1 tygodnia. 69 00:03:45,560 --> 00:03:48,790 Tak więc na koniec dnia, moja strona Wygląda zupełnie jak przedtem. 70 00:03:48,790 --> 00:03:52,090 Ale mamy teraz zdobyć dużo, znacznie lepsze projektowanie. 71 00:03:52,090 --> 00:03:54,240