1 00:00:00,000 --> 00:00:00,170 2 00:00:00,170 --> 00:00:03,090 >> ΟΜΙΛΗΤΗΣ: Ας βελτιώσει τα μαθήματα αρχική σελίδα επιτρέποντας στους εαυτούς μας να 3 00:00:03,090 --> 00:00:06,610 παρέχει προσαρμοσμένες τίτλους για κάθε ένα από αυτά σελίδες, έτσι ώστε καθένα από αυτά είναι 4 00:00:06,610 --> 00:00:08,780 όχι, πολύ απλά, CS50. 5 00:00:08,780 --> 00:00:12,550 Για να το κάνετε αυτό, ας εφαρμόσει ένα ζευγάρι λειτουργίες, το ένα ονομάζεται Render Header 6 00:00:12,550 --> 00:00:16,410 και μία που ονομάζεται Render Υποσέλιδο, ότι αντί Απαιτούν Μόνος θα λάβει 7 00:00:16,410 --> 00:00:19,330 φροντίδα του απόδοση μας κεφαλίδες και υποσέλιδα σελίδας. 8 00:00:19,330 --> 00:00:20,280 Ας ρίξουμε μια ματιά. 9 00:00:20,280 --> 00:00:24,490 >> Μέσα από index.php τώρα, ανακοίνωση που Είμαι απαιτούν ένα νέο αρχείο που ονομάζεται 10 00:00:24,490 --> 00:00:26,070 Helpers.php. 11 00:00:26,070 --> 00:00:28,910 Είναι εκεί που δύο λειτουργίες μου θα πρέπει να καθοριστούν. 12 00:00:28,910 --> 00:00:32,960 Κάτω από αυτό, παρατηρούμε ότι είμαι τώρα καλώντας ότι η λειτουργία Render Header. 13 00:00:32,960 --> 00:00:34,830 Και εγώ περνάω σε ένα επιχείρημα. 14 00:00:34,830 --> 00:00:39,040 >> Ο τύπος του επιχειρήματος αυτού φαίνεται να είναι μια σειρά, η οποία σε PHP συμβολίζεται 15 00:00:39,040 --> 00:00:40,370 με αγκύλες. 16 00:00:40,370 --> 00:00:44,210 Ειδικότερα, αυτή η συστοιχία είναι μία associative array στο βαθμό που 17 00:00:44,210 --> 00:00:49,620 συσχετίζει ένα κλειδί, όπως και ο τίτλος, με αξία, όπως CS50, αντί να στηρίζεται 18 00:00:49,620 --> 00:00:51,570 στο αριθμητικό δείκτες και μόνο. 19 00:00:51,570 --> 00:00:53,820 Κάτω από ότι τώρα έχουμε μη διατεταγμένη λίστα μου. 20 00:00:53,820 --> 00:00:57,180 Αλλά κάτω από αυτό, έχουμε μια πρόσκληση για Render Υποσέλιδο, η άλλη λειτουργία 21 00:00:57,180 --> 00:00:59,980 αυτό είναι προφανώς ορίζεται σε Helpers.php. 22 00:00:59,980 --> 00:01:01,500 >> Ας ρίξουμε μια ματιά εκεί τώρα. 23 00:01:01,500 --> 00:01:06,760 Στην Helpers.php, παρατηρήσετε ότι έχω, Πράγματι, αυτή η λειτουργία Render Τελικοί 24 00:01:06,760 --> 00:01:11,100 σκοπός του οποίου είναι στη ζωή, προφανώς για να λάβει ως όρισμα έναν πίνακα 25 00:01:11,100 --> 00:01:12,130 που ονομάζεται Data. 26 00:01:12,130 --> 00:01:15,870 Τώρα, αν ο χρήστης δεν παρέχει ρητή διάταξη, το γεγονός ότι δεν υπάρχει 27 00:01:15,870 --> 00:01:20,610 ένα σύμβολο ισότητας ακολουθείται από κενό τετράγωνο παρένθεση σημαίνει ότι η προεπιλεγμένη τιμή 28 00:01:20,610 --> 00:01:23,410 δεδομένων θα είναι απλώς μια κενή σειρά. 29 00:01:23,410 --> 00:01:27,670 >> Μέσα από Render Υποσέλιδο, παρατηρήσετε ότι είμαι καλώντας μια λειτουργία που ονομάζεται Απόσπασμα. 30 00:01:27,670 --> 00:01:32,170 Απόσπασμα παίρνει ένα array, όπως Δεδομένα σε αυτή την περίπτωση, και για κάθε 31 00:01:32,170 --> 00:01:37,060 κλειδί σε αυτό, αποδεικνύεται ότι το κλειδί σε μια τοπική μεταβλητή με το ίδιο όνομα. 32 00:01:37,060 --> 00:01:41,640 Έτσι, αν αυτό associative array είχε ένα κλειδί ονομάζεται Foo, απόσπασμα θα διασφαλίσει ότι 33 00:01:41,640 --> 00:01:45,680 έχουμε τώρα μια τοπική μεταβλητή που ονομάζεται σύμβολο του δολαρίου Foo, η αξία των οποίων είναι η 34 00:01:45,680 --> 00:01:48,140 ίδια όπως ήταν το γεγονός ότι associative array. 35 00:01:48,140 --> 00:01:52,890 >> Τέλος, καλώ Απαίτηση footer.php, η οποία ως ένα μέρος, φαίνεται 36 00:01:52,890 --> 00:01:54,900 αρκετά ήθελα απλώς αυτό. 37 00:01:54,900 --> 00:01:59,390 Τώρα, πίσω στο Helpers.php, παρατηρούμε ότι έχουμε επίσης Render Header, του οποίου η 38 00:01:59,390 --> 00:02:02,610 επιχείρημα είναι το ίδιο, μία συστοιχία που ονομάζεται Data του οποίου η προεπιλεγμένη 39 00:02:02,610 --> 00:02:04,380 αξία είναι ένα άδειο πίνακα. 40 00:02:04,380 --> 00:02:07,060 Στη συνέχεια καλέστε Απόσπασμα και πάλι, όπως και πριν. 41 00:02:07,060 --> 00:02:12,130 Και τότε θα απαιτούν header.php, το περιεχόμενο των οποίων είναι τώρα αυτό. 42 00:02:12,130 --> 00:02:16,980 >> Μέσα από header.php, παρατηρούμε ότι δεν έχουν πλέον ένα σκληρό κωδικοποιημένο τίτλο. 43 00:02:16,980 --> 00:02:19,720 Και τώρα έχουμε μια ετικέτα H1, καθώς και. 44 00:02:19,720 --> 00:02:24,030 Ειδικότερα, η αξία του τίτλου πρόκειται να είναι ανεξάρτητα από την αξία των 45 00:02:24,030 --> 00:02:26,750 η τοπική μεταβλητή που ονομάζεται τίτλος είναι. 46 00:02:26,750 --> 00:02:31,800 Μετά περνώντας σε μια λειτουργία PHP που ονομάζεται HTML Ειδικοί Χαρακτήρες, θα πάμε 47 00:02:31,800 --> 00:02:36,560 να λάβει αυτήν την τιμή επιστροφής, και, στη συνέχεια, συνδέστε το στο HTML Είμαι έξοδο 48 00:02:36,560 --> 00:02:39,430 με έναν τρόπο αυτής της λειτουργίας, ονομάζεται Echo. 49 00:02:39,430 --> 00:02:43,580 >> Πραγματικά, αυτή είναι η σημειογραφία στενογραφία για μια κλήση συνάρτησης που θα μπορούσαν αλλιώς 50 00:02:43,580 --> 00:02:44,780 μοιάζει με αυτό. 51 00:02:44,780 --> 00:02:49,010 Αλλά είναι ένα καθαρότερο πολύ, απλά, να γράψει ελεύθερο βραχίονα ερωτηματικό ίση 52 00:02:49,010 --> 00:02:51,400 υπογράψουν, χωρίς καν να αναφέρουμε PHP. 53 00:02:51,400 --> 00:02:56,260 Είμαι τώρα πρόκειται να κάνει το ίδιο στο εσωτερικό της ότι η ετικέτα H1, έτσι ώστε τελικά, αν η 54 00:02:56,260 --> 00:03:00,520 χρήστης περνάει στο Render λειτουργία μου Header ένα associative array, μέσα 55 00:03:00,520 --> 00:03:05,310 των οποίων είναι ένα κλειδί που ονομάζεται τίτλου, ότι κλειδί associative array θα γίνει 56 00:03:05,310 --> 00:03:07,870 τοπική μεταβλητή που ονομάζεται σύμβολο του δολαρίου τίτλου. 57 00:03:07,870 --> 00:03:12,130 >> Στη συνέχεια, θα περάσει αυτό το σύμβολο του δολαρίου Τίτλος μεταβλητής στην συνάρτηση αυτή, HTML 58 00:03:12,130 --> 00:03:13,240 Ειδικοί Χαρακτήρες. 59 00:03:13,240 --> 00:03:16,500 Και ακριβώς σε περίπτωση που υπάρχει οποιαδήποτε δυνητικά επικίνδυνα χαρακτήρες σε 60 00:03:16,500 --> 00:03:20,500 εκεί, όπως και συμπλεκτικά σύμβολα ή άλλα τέτοια σύμβολα, HTML Ειδικοί Χαρακτήρες θα κάνει 61 00:03:20,500 --> 00:03:23,140 βεβαιωθείτε ότι από όπου και αν καθίσταται ασφάλεια στη σελίδα. 62 00:03:23,140 --> 00:03:26,420 Και με τη χρήση ανοικτό ερώτημα βραχίονα επισημάνετε το σύμβολο της ισότητας, είμαι κυριολεκτικά 63 00:03:26,420 --> 00:03:30,080 υποκαθιστώντας μέσα σε εκείνο το τμήμα της σελίδα, ανεξάρτητα από την τιμή επιστροφής 64 00:03:30,080 --> 00:03:32,050 της HTML Χαρακτήρες είναι. 65 00:03:32,050 --> 00:03:36,450 >> Εν τω μεταξύ, σε Lectures.php, Ι έχουν μια νέα τιμή για τον τίτλο. 66 00:03:36,450 --> 00:03:38,330 Δεν CS50, αλλά Διαλέξεις. 67 00:03:38,330 --> 00:03:41,590 Στην Week0.php, έχω αξίας της εβδομάδας 0. 68 00:03:41,590 --> 00:03:45,560 Και σε Week1.php, έχω αξίας της εβδομάδας 1. 69 00:03:45,560 --> 00:03:48,790 Έτσι, στο τέλος της ημέρας, σελίδα μου φαίνεται αρκετά όπως το έκανε πριν. 70 00:03:48,790 --> 00:03:52,090 Αλλά έχουμε πάρει τώρα μια πολύ, πολύ καλύτερο σχεδιασμό. 71 00:03:52,090 --> 00:03:54,240