SPRECHER: Wir verbessern die Kurse Homepage indem wir uns auf bieten individuelle Titel für jede dieser Seiten, so dass jeder von ihnen nicht ganz einfach, CS50. Dazu implementieren wir ein paar Funktionen, sogenannte Render-Header und eine namens Render Footer, dass statt erfordern Alleine dauert Pflege der Rendering unserer Kopf-und Fußzeilen Seite. Lassen Sie uns einen Blick. Innerhalb der index.php jetzt feststellen, dass Ich bin eine neue Datei namens erfordern Helpers.php. Es ist dort, dass meine beiden Funktionen definiert. Darunter feststellen, dass ich jetzt den Aufruf diese Funktion Render-Header. Und ich bin vorbei in einen Streit. Die Art dieses Argument zu sein scheint ein Array, das in PHP bezeichnet wird mit eckigen Klammern. Insbesondere ist diese Anordnung ein assoziatives Array, sofern es verbindet einen Schlüssel, wie Titel, mit einem Wert, wie CS50, anstatt sich auf numerische Indizes allein. Darunter haben wir jetzt meine ungeordnete Liste. Aber darunter, einen Anruf zu machen haben wir Footer, die andere Funktion das ist vermutlich definiert in Helpers.php. Werfen wir einen Blick gibt es jetzt. In Helpers.php, feststellen, dass ich habe, in der Tat, dass die Funktion Render Footer deren Zweck im Leben ist offenbar nehmen in als Argument ein Array genannt Data. Nun, wenn der Benutzer nicht bieten eine ausdrückliche Anordnung ist die Tatsache, dass es ein Gleichheitszeichen, gefolgt von leeren Platz Klammern bedeutet, dass der Standardwert von Daten wird einfach ein leerer Array sein. Innerhalb von Render-Footer, bemerken, dass ich Aufruf einer Funktion namens Extract. Auszug nimmt ein assoziatives Array, wie Die Daten in diesem Fall ist, und für alle Schlüssel in der es stellt sich diesen Schlüssel in eine lokale Variable mit dem gleichen Namen. Also, wenn das assoziative Array hatte einen Schlüssel genannt Foo, würde dafür sorgen, dass Extrakt wir haben jetzt eine lokale Variable namens Dollarzeichen Foo, dessen Wert der so, wie es war, daß assoziatives Array. Schließlich rufe ich footer.php erforderlich, welche nebenbei sieht ganz einfach so. Nun, zurück in Helpers.php, feststellen, dass haben wir auch Render-Header, dessen Argument ist die gleiche, eine Anordnung genannt, dessen Standarddaten Wert ist eine leere Array. Wir rufen Sie dann Extract wieder wie vorher. Und dann benötigen wir Header.php, , deren Inhalt nun dies. Innerhalb von Header.php, bemerken, dass wir nicht mehr eine hart codierte Titel. Und wir haben jetzt ein H1-Tag, wie gut. Insbesondere der Wert der Titel wird sich unabhängig vom Wert sein die lokale Variable namens Titel ist. Nach der Übergabe an ein PHP-Funktion HTML Sonder Chars genannt, werden wir , dass die Rückgabewert erhalten, und dann stecken Sie es in die HTML-Ausgabe bin ich durch einen Weg, der Funktions Echo genannt. Wirklich, das ist Kurzform für Aufruf einer Funktion, die ansonsten sehen wie folgt aus. Aber es ist viel sauberer, einfach, zu schreiben Klammer auf Fragezeichen gleich schreiben, ohne auch nur zu erwähnen PHP. Ich gehe jetzt, um die gleiche Innenseite tun dass H1-Tag, so dass letztendlich, wenn die Teilnehmer meiner Render-Header Funktion übergibt ein assoziatives Array, innen von denen ist ein Schlüssel namens Titel, dass Schlüssel assoziativen Arrays wird zu einem lokale Variable namens Dollar-Zeichen Titel. Wir werden dann passieren, dass die Dollar-Zeichen Titel Variablen dieser Funktion HTML Besondere Chars. Und für den Fall gibt es keine potenziell gefährlichen Zeichen in da, wie das kaufmännische oder andere Symbole, werden HTML-Sonder Chars machen sicher, dass sie gemacht sind sicher auf der Seite. Und durch die Verwendung offener Klammer Frage Gleichheitszeichen zu markieren, bin ich buchstäblich Substitution in an diesem Teil der Seite auch immer der Rückgabewert HTML-Chars ist. Inzwischen in Lectures.php, ich haben einen neuen Wert für Titel. Nicht CS50, aber Vorträge. In Week0.php, ich habe ein Wert von 0 Woche. Und in Week1.php, ich habe ein Wert von 1 Woche. So dass am Ende des Tages, My Page sieht ganz wie früher. Aber wir haben jetzt eine viel bekommen, viel besser Design.