1 00:00:00,000 --> 00:00:03,920 >> [Daqq ta mużika] 2 00:00:03,920 --> 00:00:11,760 3 00:00:11,760 --> 00:00:13,800 >> DAVID J. Malan: Kull dritt. 4 00:00:13,800 --> 00:00:15,640 Dan huwa CS50. 5 00:00:15,640 --> 00:00:17,620 Dan huwa l-bidu ta 'tmien ġimgħat. 6 00:00:17,620 --> 00:00:22,440 U inti tista 'tfakkar li aħna jitħalla' off aħħar darba tħares lejn lingwa ġdida 7 00:00:22,440 --> 00:00:23,240 għal kollox. 8 00:00:23,240 --> 00:00:25,905 Fil-fatt, wieħed li pjuttost ħfief u mhuwiex anki 9 00:00:25,905 --> 00:00:26,940 lingwa ta 'programmar. 10 00:00:26,940 --> 00:00:31,100 Huwa lingwa markup li tikri us attwalment istruttura u l-paġni web. 11 00:00:31,100 --> 00:00:33,350 U meta inti xi ħaġa oħra flimkien ma this-- 12 00:00:33,350 --> 00:00:35,670 jew inti dalwaqt se, jekk inti ma jkunux diġà. 13 00:00:35,670 --> 00:00:38,530 Aħna qed tmur biex tuża Cascading Folji stil, jew CSS, li 14 00:00:38,530 --> 00:00:40,971 hija tip ieħor ta 'lingwa bi proprjetajiet u l-valuri 15 00:00:40,971 --> 00:00:43,220 li għaddej biex jgħidilna jagħmlu affarijiet bħall jibdlu l-kulur 16 00:00:43,220 --> 00:00:46,010 u jibdlu l-pożizzjoni u dawn it-tipi ta 'tweaks. 17 00:00:46,010 --> 00:00:49,940 Imma llum u onward, nibdew biex tiffoka fuq il-lingwi aktar qawwija, 18 00:00:49,940 --> 00:00:52,810 lingwi ta 'programmar attwali bħal PHP. 19 00:00:52,810 --> 00:00:54,880 >> Allura PHP kien madwar għal xi żmien. 20 00:00:54,880 --> 00:00:56,810 U kif tkun taf tara, dan kienet imfassla primarjament 21 00:00:56,810 --> 00:01:00,280 kmieni għall-attwali użu fil iżvilupp tal-web 22 00:01:00,280 --> 00:01:02,360 u fil-fatt jiġġeneraw paġni web. 23 00:01:02,360 --> 00:01:04,849 Allura dak tipi ta ' Karatteristiċi ma 'lingwa 24 00:01:04,849 --> 00:01:10,040 bżonn sabiex jagħmlu web paġni dinamiku magħha? 25 00:01:10,040 --> 00:01:14,760 >> Fi kliem ieħor, jekk inti tixtieq li jiġġeneraw kontenut dynamically-- bħal Facebook 26 00:01:14,760 --> 00:01:19,480 Newsfeed, li tbiddel b'mod kostanti, jew messaġġi instantanji li pop up minn żmien 27 00:01:19,480 --> 00:01:21,872 li time-- bħall x'inhu l- parti ewlenija ta 'funzjonalità 28 00:01:21,872 --> 00:01:24,580 għandek bżonn fil-lingwa ta 'programmar li tavżak dinamikament 29 00:01:24,580 --> 00:01:28,070 jistampa informazzjoni ġdida għall-iskrin? 30 00:01:28,070 --> 00:01:28,685 >> STUDENT: Kodiċi. 31 00:01:28,685 --> 00:01:29,560 DAVID J. Malan: Kodiċi. 32 00:01:29,560 --> 00:01:30,440 OK. 33 00:01:30,440 --> 00:01:31,995 Aħna ser jieħdu dik. 34 00:01:31,995 --> 00:01:35,310 A ftit aktar preċiża. 35 00:01:35,310 --> 00:01:37,639 I mean, stajna nagħmlu dan ma 'C, franchement. 36 00:01:37,639 --> 00:01:38,930 Ikun uġigħ fl-għonq. 37 00:01:38,930 --> 00:01:41,045 But-- huwa dan l-impenn? 38 00:01:41,045 --> 00:01:41,895 >> STUDENT: Yeah. 39 00:01:41,895 --> 00:01:42,677 Varjabbli, forsi? 40 00:01:42,677 --> 00:01:43,760 DAVID J. Malan: Varjabbli. 41 00:01:43,760 --> 00:01:44,160 OK, żgur. 42 00:01:44,160 --> 00:01:45,740 Varjabbli jista 'ċertament jgħin us out. 43 00:01:45,740 --> 00:01:47,020 U anke xi ħaġa sempliċi. 44 00:01:47,020 --> 00:01:50,640 We użati fl-ewwel programm ta 'l-ewwel jum 45 00:01:50,640 --> 00:01:55,686 meta aħna attwalment qal "Hello dinja." 46 00:01:55,686 --> 00:01:56,570 >> STUDENT: Stampa. 47 00:01:56,570 --> 00:01:57,778 >> DAVID J. Malan: Stampa, id-dritt? 48 00:01:57,778 --> 00:02:01,050 Stampa, jew printf fil- dinja ta 'C. Allura dan il-ħin, 49 00:02:01,050 --> 00:02:03,362 aħna kellna fil tagħna rimi ta 'language-- C, 50 00:02:03,362 --> 00:02:05,570 fil particular-- u anki Scratch għal dik il-kwistjoni li 51 00:02:05,570 --> 00:02:07,400 jistgħu jiġġeneraw spag ta 'test. 52 00:02:07,400 --> 00:02:11,090 >> Ukoll, jekk HTML, kif rajna aħħar ġimgħa, hija biss mazz sħiħ ta 'spag ta' test 53 00:02:11,090 --> 00:02:14,692 għalkemm parentesi miftuħa u magħluqa parentesi u xi tip ta 'rima 54 00:02:14,692 --> 00:02:16,650 u r-raġuni wara dan, ukoll allura nistgħu verament 55 00:02:16,650 --> 00:02:20,440 tibda jiġġeneraw paġni tal-web jew manwalment billi jittajpja minnhom fl gedit 56 00:02:20,440 --> 00:02:23,870 jew Microsoft Word, għal dak matter-- aħna biss bżonn ta 'editur test. 57 00:02:23,870 --> 00:02:26,830 >> Jew nistgħu jikteb il-kodiċi, għas-suġġeriment tiegħek 58 00:02:26,830 --> 00:02:30,435 qabel, li let us dinamikament jiġġeneraw HTML, 59 00:02:30,435 --> 00:02:32,560 u dak hu li aħna qed tmur biex tibda tagħmel ma PHP 60 00:02:32,560 --> 00:02:34,900 u finalment anke ma ' lingwa imsejħa JavaScript, 61 00:02:34,900 --> 00:02:37,910 huwa juża l-lingwa waħda biex jiġġeneraw ieħor. 62 00:02:37,910 --> 00:02:40,720 U fil-fatt, dan huwa dak Facebook u ħafna, ħafna siti oħra 63 00:02:40,720 --> 00:02:44,530 tagħmel biex attwalment dinamikament juri l-informazzjoni ġdida għalik. 64 00:02:44,530 --> 00:02:47,117 >> Mela ejja tibda bil this-- a cryptic linja tfittex, iżda wieħed 65 00:02:47,117 --> 00:02:48,450 li attwalment pretty qawwija. 66 00:02:48,450 --> 00:02:51,210 S'issa, aħna kont qed tuża C, li hija lingwa kkompilata. 67 00:02:51,210 --> 00:02:55,050 U biss recap-- malajr a kkompilata lingwa jkun dak karatteristika? 68 00:02:55,050 --> 00:02:59,050 Ovvjament għandek bżonn biex jikkompilaw dan, imma dak ma jfisser? 69 00:02:59,050 --> 00:03:00,505 Yeah? 70 00:03:00,505 --> 00:03:02,940 >> STUDENT: Jeħtieġ li jkun mmuntati fi kodiċi magna. 71 00:03:02,940 --> 00:03:03,060 >> DAVID J. Malan: OK. 72 00:03:03,060 --> 00:03:04,530 Jeħtieġ li jiġi mmuntat f'Kodiċi magna. 73 00:03:04,530 --> 00:03:07,340 Allura inti tieħu kodiċi sors tiegħek, li huwa tip ta 'l-Ingliż simili. 74 00:03:07,340 --> 00:03:09,270 Inti jikkonvertu li biex xi ħaġa livell aktar baxx, 75 00:03:09,270 --> 00:03:11,590 li huwa finalment tissejjaħ oġġett code-- 0 u 1 ta. 76 00:03:11,590 --> 00:03:14,830 U huwa dawk 0 u 1 li CPU, bħal dawk magħmula minn Intel, 77 00:03:14,830 --> 00:03:16,110 attwalment jifhmu. 78 00:03:16,110 --> 00:03:19,690 >> Issa, PHP u Python u Ruby u JavaScript u għenieqed ta 'oħrajn 79 00:03:19,690 --> 00:03:23,190 lingwi mhumiex kumpilati lingwi iżda interpretat lingwi, 80 00:03:23,190 --> 00:03:26,630 li jfisser li inti biss tip lilhom u mbagħad inti ma jibdluhom fi 0 u 1 ta. 81 00:03:26,630 --> 00:03:30,790 Inti minflok sempliċiment jipprovdu imbagħad bħala input għall-programm xi ħadd ieħor, 82 00:03:30,790 --> 00:03:32,080 jissejjaħ interpretu. 83 00:03:32,080 --> 00:03:34,460 U dik il-persuna programm ġie mfassal 84 00:03:34,460 --> 00:03:38,280 biex jifhem dak li kull wieħed u kull simbolu fl-Python jew PHP 85 00:03:38,280 --> 00:03:42,650 jew Ruby jew kwalunkwe numru ta ' lingwi oħra ifisser. 86 00:03:42,650 --> 00:03:44,760 >> U hekk kollha għandna bżonn huwa xi ħaġa bħal din. 87 00:03:44,760 --> 00:03:46,350 Allura fil-fatt, jien ser jmorru fuq l-appliance 88 00:03:46,350 --> 00:03:48,100 hawn, biss fi kwalunkwe tieqa qodma, u aħna qed 89 00:03:48,100 --> 00:03:52,580 se jmorru 'l quddiem u miftuħa fajl imsejjaħ, jgħidu, bonjour. 90 00:03:52,580 --> 00:03:55,780 Issa qabel, I jista 'jkollhom ffrankati dan anke ma 'estensjoni fajl, 91 00:03:55,780 --> 00:03:57,910 imma jien ser tagħmel xi ħaġa saħansitra aktar sempliċi hawn. 92 00:03:57,910 --> 00:04:02,450 Jien ser jimxi 'l quddiem u tibda dan il-fajl ma 'dan sintassi cryptic. 93 00:04:02,450 --> 00:04:06,310 Allura "utent, bin, ENV, għall-ambjent, PHP. " 94 00:04:06,310 --> 00:04:10,670 >> Din hija sempliċement linja waħda tal-kodiċi li l- ser jgħidlek sistema operattiva tiegħi, 95 00:04:10,670 --> 00:04:13,730 jmorru jsibu fl lokali tiegħek ambjent x'ikun jiġifieri, 96 00:04:13,730 --> 00:04:18,149 kulfejn PHP is-- l interpreter-- u jimxi 'l quddiem u l-użu li interpretu 97 00:04:18,149 --> 00:04:20,589 li tinterpreta l-kodiċi li ġej. 98 00:04:20,589 --> 00:04:22,760 Issa, dan huwa tip ta ' karatteristika ikrah ta 'PHP. 99 00:04:22,760 --> 00:04:24,980 Iżda f'din il-lingwa, kwalunkwe darba li inti tikteb kodiċi PHP, 100 00:04:24,980 --> 00:04:29,200 ikollok bżonn li jkollhom waħda minn dawn ikrah Tags PHP jiddemarkaw il-bidu 101 00:04:29,200 --> 00:04:32,220 tal tiegħek code-- 00:04:37,430 >> Iżda taħt hawn, I tista 'issa tagħmel xi ħaġa pjuttost sempliċi, bħal printf comma bonjour 103 00:04:37,430 --> 00:04:40,922 dinja qrib backslash n kwotazzjoni, parentesi qrib. 104 00:04:40,922 --> 00:04:42,630 U mbagħad biss għall-tajba miżura, jien ser 105 00:04:42,630 --> 00:04:45,380 jimxi 'l quddiem u qrib tag PHP tiegħi hawn fuq 106 00:04:45,380 --> 00:04:47,390 sabiex kollox jistenna nicely pretty stampati. 107 00:04:47,390 --> 00:04:50,780 >> U malli I ikklikkja Save, gedit huwa attwalment intelliġenti biżżejjed 108 00:04:50,780 --> 00:04:54,620 li tħares lejn dak ħafna ewwel linja u realizzata, oh, int bil-miktub kodiċi PHP. 109 00:04:54,620 --> 00:04:56,710 Let me jenfasizzaw sintassi bl-kuluri 110 00:04:56,710 --> 00:04:58,690 hawn hekk li inhi out ftit aktar. 111 00:04:58,690 --> 00:05:01,300 Imma issa jien se jmorru l isfel għall-tieqa terminal tiegħi. 112 00:05:01,300 --> 00:05:02,340 I ser zoom. 113 00:05:02,340 --> 00:05:06,860 >> Dan il-programm kienet imsejħa "hello," hekk jien ser tagħmel dot mmejla hello, 114 00:05:06,860 --> 00:05:07,990 iżda permess miċħuda. 115 00:05:07,990 --> 00:05:08,490 U bash. 116 00:05:08,490 --> 00:05:10,610 Aħna fil-fatt semgħu dak ġimgħat ħaġa koppja ilu 117 00:05:10,610 --> 00:05:13,140 fil-kuntest ta 'Shellshock, wieħed minn dawk bugs. 118 00:05:13,140 --> 00:05:16,240 >> Iżda permess ċaħad Rajna qabel, forsi f'kuntest differenti. 119 00:05:16,240 --> 00:05:19,060 Ma xi ħadd jitfakkar kif inti tista 'tiffissa xi ħaġa 120 00:05:19,060 --> 00:05:22,100 Fejn permess ikun miċħud bħal din? 121 00:05:22,100 --> 00:05:23,490 X'hemm l-kmand, għall-inqas? 122 00:05:23,490 --> 00:05:24,159 >> STUDENT: chmod. 123 00:05:24,159 --> 00:05:26,700 DAVID J. Malan: Yeah, chmod, għat-tibdil tal-mod ta 'fajl. 124 00:05:26,700 --> 00:05:30,171 U int ser tingħata l-aktar użati biex din il-ġimgħa d-dieħla bi problema sussegwenti 125 00:05:30,171 --> 00:05:30,670 sett. 126 00:05:30,670 --> 00:05:33,211 Iżda għal issa, jien se jibdlu il-modalità li ma tkunx tista 'tinqara, 127 00:05:33,211 --> 00:05:36,650 imma li jagħtu executeability kulħadd privileġġi, l-abbiltà 128 00:05:36,650 --> 00:05:37,710 biex imexxu dan il-fajl. 129 00:05:37,710 --> 00:05:40,360 U jien ser tassenja li għall-fajl bonjour. 130 00:05:40,360 --> 00:05:45,150 >> Jekk I issa do dot mmejla bonjour jidħlu, inti tara, fil-fatt, programm tiegħi, Hello dinja. 131 00:05:45,150 --> 00:05:48,760 U dak il-pass ma I skip ċar għal kollox? 132 00:05:48,760 --> 00:05:49,520 Kumpilazzjoni. 133 00:05:49,520 --> 00:05:51,680 So I biss dam dan il-programm sempliċiment. 134 00:05:51,680 --> 00:05:55,690 >> U jirriżulta out inti tista 'tagħmel dan ma' lott ta 'sintassi reminixxenti ta' C. 135 00:05:55,690 --> 00:06:03,400 Let me jmorru fl għal kodiċi tal-lum, li nressaq fis-direttorju vhost tiegħi 136 00:06:03,400 --> 00:06:05,250 hawn, għal raġunijiet veri aħna ser terga 'lura għal. 137 00:06:05,250 --> 00:06:09,350 U jien se jmorru fi, ejja ngħidu, kondizzjonijiet 1. 138 00:06:09,350 --> 00:06:12,450 >> U tkun taf tara hawn, l-ewwel u qabel kollox, mazz sħiħ ta 'kummenti. 139 00:06:12,450 --> 00:06:15,240 Iżda dan huwa attwalment a-ħolqien mill-ġdid fil-PHP 140 00:06:15,240 --> 00:06:18,960 ta 'programm għamilna fil-ġimgħa wieħed imsejjaħ kondizzjonijiet 1.c 141 00:06:18,960 --> 00:06:20,690 fejn l-iskop fil- ħajja ta 'dan il-programm 142 00:06:20,690 --> 00:06:22,950 hija apparentement li jistaqsi l-utent għal integer 143 00:06:22,950 --> 00:06:25,270 u mbagħad jagħmlu xi fluffy analiżi fuqha biha 144 00:06:25,270 --> 00:06:29,510 inti tgħidli jekk huwa pożittiv jew negattiv jew żero. 145 00:06:29,510 --> 00:06:34,220 U jien iġibu dan up biss għaliex, ħlief għal forsi dettall ftit wieħed, 146 00:06:34,220 --> 00:06:37,150 huwa indistingwibbli s'issa mill C. 147 00:06:37,150 --> 00:06:39,930 >> X'hemm-karatteristika waħda hawnhekk li forsi jumps out 148 00:06:39,930 --> 00:06:41,410 fi inti bħala ftit differenti? 149 00:06:41,410 --> 00:06:42,160 Forsi żewġ affarijiet. 150 00:06:42,160 --> 00:06:42,660 Yeah? 151 00:06:42,660 --> 00:06:44,070 >> STUDENT: Dollar sinjal n? 152 00:06:44,070 --> 00:06:44,944 >> DAVID J. Malan: Yeah. 153 00:06:44,944 --> 00:06:46,210 Allura sinjal dollaru n huwa preżenti. 154 00:06:46,210 --> 00:06:48,120 U sinjali dollaru, kif Ser naraw, ser 155 00:06:48,120 --> 00:06:51,460 li jkun jiffissaw għall-bidu ta 'kwalunkwe varjabbli fil-PHP. 156 00:06:51,460 --> 00:06:54,250 Huwa tnejn tajbin tajba u bad-- fl li huwa tip ta 'ovvju x'hemm 157 00:06:54,250 --> 00:06:56,797 varjabbli, ħażina fil li huwa Énième ħaġa għat-tip. 158 00:06:56,797 --> 00:06:58,630 U hemm waħda oħra Ħaġa aħna ma pjuttost 159 00:06:58,630 --> 00:07:00,876 jidher, għallinqas minn dan ortografija. yeah? 160 00:07:00,876 --> 00:07:01,630 >> STUDENT: Readline. 161 00:07:01,630 --> 00:07:02,671 >> DAVID J. Malan: Readline. 162 00:07:02,671 --> 00:07:06,550 Readline aħna ma tara, per se, fil C, anki jekk teżisti xi ħaġa 163 00:07:06,550 --> 00:07:09,530 simili, imma aħna ħadthom użati getstring, u dan huwa kontroparti tagħha. 164 00:07:09,530 --> 00:07:12,950 Hekk jekk I tmur fis dan direttorju, li jiġri li jkun, 165 00:07:12,950 --> 00:07:18,030 kif I ser jispjegaw fil-daqsxejn fl vhost tiegħi direttorju u s-sors tiegħi A tad-direttorju, 166 00:07:18,030 --> 00:07:22,730 u I jimxi 'l quddiem u jagħmlu dot mmejla conditions-- whoops-- dot mmejla 167 00:07:22,730 --> 00:07:26,710 kondizzjonijiet 1, tkun taf tara, għal darb'oħra, l-istess permess issue-- miċħuda. 168 00:07:26,710 --> 00:07:33,610 >> So let me zoom fi u jagħmlu chmod plus x fuq il-kundizzjonijiet, kondizzjonijiet dot mmejla. 169 00:07:33,610 --> 00:07:35,222 Nixtieq integer, jekk jogħġbok, 50. 170 00:07:35,222 --> 00:07:36,930 U nistgħu jilagħbu din logħba ġurnata kollha twil. 171 00:07:36,930 --> 00:07:39,140 Li għaddej biex jaġixxu eżattament kif għamlet fil-ġimgħa. 172 00:07:39,140 --> 00:07:42,860 >> OK hekk mhux kollha li differenti, ħlief mhux biss li ftit żgħira ta 'sintassi, 173 00:07:42,860 --> 00:07:45,490 iżda fil-quċċata, I darb'oħra kellhom din il-linja li 174 00:07:45,490 --> 00:07:49,760 permessi me biex joħolqu xi ħaġa li qisu programm C imsejjaħ hello, 175 00:07:49,760 --> 00:07:51,150 imsejħa kondizzjonijiet 1. 176 00:07:51,150 --> 00:07:54,520 Imma din mhix 0 u dawk Jien eżekuzzjoni direttament. 177 00:07:54,520 --> 00:07:57,620 Minflok huwa taħdem din interpretu li ismu 178 00:07:57,620 --> 00:07:59,440 jiġri li jkun identiku għall-lingwa. 179 00:07:59,440 --> 00:08:04,970 Il-programm huwa msejjaħ PHP, u l-kodiċi tiegħi taħt il-linja waħda jkun qed jiġi mgħoddi fis dan. 180 00:08:04,970 --> 00:08:07,740 >> Nistgħu nagħmlu ieħor pjuttost sempliċi Eżempju reminixxenti ta 'xi ħaġa 181 00:08:07,740 --> 00:08:09,240 għamilna ġimgħat ilu. 182 00:08:09,240 --> 00:08:12,020 Għal darb'oħra, dan huwa tip ta ' blokki arbitrarja tal-kodiċi 183 00:08:12,020 --> 00:08:14,000 li apparentement ma dak meta inti run? 184 00:08:14,000 --> 00:08:15,625 X'hemm dan morna għall-istampa, preżumibbilment? 185 00:08:15,625 --> 00:08:23,540 186 00:08:23,540 --> 00:08:28,250 >> Allura inizjalment fuq il-linja 16, huwa ser tg x issa huwa ta '2, probabbilment. 187 00:08:28,250 --> 00:08:30,920 % D huwa l-istess bħal $ i għall printf. 188 00:08:30,920 --> 00:08:33,460 Mela allura huwa cubing, dot, dot, dot, fil-linja 17. 189 00:08:33,460 --> 00:08:36,299 U mbagħad linja 18 jidher li jsejjaħ il-funzjoni Cubed. 190 00:08:36,299 --> 00:08:37,600 U fejn tkun Cubed definita? 191 00:08:37,600 --> 00:08:40,319 >> Ukoll, jidher qisu fil-linja 25, b'tali mod li mhux kollha li differenti. 192 00:08:40,319 --> 00:08:42,610 Stajt ltqajna xi kummenti hawn fuq dan, iżda għall-parti l-kbira, 193 00:08:42,610 --> 00:08:45,370 huwa pjuttost sempliċi porting jew il-konverżjoni 194 00:08:45,370 --> 00:08:48,470 mill-programm C għall-verżjoni PHP. 195 00:08:48,470 --> 00:08:52,670 Imma issa hemm koppja ta ' differenzi li forsi għandhom jaqbżu out. 196 00:08:52,670 --> 00:08:56,100 X'iktar huwa differenti dwar kif inti tista 'tikteb dan l-istess programm C? 197 00:08:56,100 --> 00:08:57,900 >> STUDENT: [inaudible]. 198 00:08:57,900 --> 00:09:00,070 >> DAVID J. Malan: Hemm ebda prototip top up. 199 00:09:00,070 --> 00:09:03,210 Allura PHP-- u franchement, a lott ta 'languages-- moderna 200 00:09:03,210 --> 00:09:06,920 huma ħafna aktar intelliġenti u aktar utli minn C kompilaturi f'dik inti 201 00:09:06,920 --> 00:09:09,740 tista 'tpoġġi l-funzjoni up here, inti tista 'tpoġġi funzjoni stabbiliti hawn, 202 00:09:09,740 --> 00:09:12,740 u l-interpretu huwa għaddej biex tagħmel inti l-favur tal-qari 203 00:09:12,740 --> 00:09:16,010 -fajl sħiħ qabel ma jiddeċidix li xi funzjoni ma teżistix. 204 00:09:16,010 --> 00:09:17,970 Allura titjib sbieħ snin aktar tard. 205 00:09:17,970 --> 00:09:22,126 Imma hemm ukoll xi ħaġa inkella differenti jew assenti hawn. 206 00:09:22,126 --> 00:09:22,626 Yeah? 207 00:09:22,626 --> 00:09:25,084 >> STUDENT: [inaudible]. 208 00:09:25,084 --> 00:09:27,750 DAVID J. Malan: Aħna ma jkollhom jiddikjaraw it-tipi ta 'varjabbli, 209 00:09:27,750 --> 00:09:31,780 hekk aħna ser tara qabel twil li hemm tipi differenti fil PHP, 210 00:09:31,780 --> 00:09:34,970 imma inti m'għandekx bżonn li jispeċifikaw lilhom, li wkoll hija kemm tajbin u ħżiena. 211 00:09:34,970 --> 00:09:36,623 U hemm waħda nieqsa ħaġa oħra. 212 00:09:36,623 --> 00:09:37,430 >> STUDENT: M'hemm l-ebda libreriji. 213 00:09:37,430 --> 00:09:38,630 >> DAVID J. Malan: M'hemm l-ebda libreriji. 214 00:09:38,630 --> 00:09:39,350 OK, b'tali mod li sbieħ. 215 00:09:39,350 --> 00:09:40,540 Irridu jiksbu ħafna aktar barra mill-kaxxa. 216 00:09:40,540 --> 00:09:43,373 Allura hemm attwalment ħafna aktar affarijiet milli ħsibt kienu differenti. 217 00:09:43,373 --> 00:09:44,350 Kif dwar il-mod fid-dahar? 218 00:09:44,350 --> 00:09:46,032 X'hemm li? 219 00:09:46,032 --> 00:09:46,740 Jgħidu li darba aktar? 220 00:09:46,740 --> 00:09:47,960 >> STUDENT: Pointer. 221 00:09:47,960 --> 00:09:49,270 >> DAVID J. Malan: Ebda pointers. 222 00:09:49,270 --> 00:09:51,280 OK, għall-inqas f'dan l-eżempju, l-ebda. 223 00:09:51,280 --> 00:09:52,070 C'est ġust. 224 00:09:52,070 --> 00:09:55,090 Allura ma jkunx hemm pointers fil-PHP attwalment b'mod ġenerali. 225 00:09:55,090 --> 00:09:58,730 Hemm xi ħaġa imsejħa referenzi, iżda aħna mhux se jqattgħu wisq ħin hemm. 226 00:09:58,730 --> 00:09:59,520 U x'iktar? 227 00:09:59,520 --> 00:10:00,185 >> STUDENT: Main. 228 00:10:00,185 --> 00:10:01,060 DAVID J. Malan: Main. 229 00:10:01,060 --> 00:10:02,768 Allura dan kien il-Biggie I kienet taħseb ta '. 230 00:10:02,768 --> 00:10:04,660 Avviż hemm l-ebda punt ta 'dħul ewlieni. 231 00:10:04,660 --> 00:10:06,525 Inti sempliċiment tibda tikteb kodiċi tiegħek. 232 00:10:06,525 --> 00:10:08,400 U dan huwa attwalment se jkun vantaġġuż 233 00:10:08,400 --> 00:10:10,560 meta aħna transizzjoni mumentarjament li attwalment qed jużaw 234 00:10:10,560 --> 00:10:13,980 dan l-istess lingwa għal web ibbażat- , ipprogrammar li aħna 235 00:10:13,980 --> 00:10:16,580 ma jridux li jkollhom waħda biss punt ta 'dħul. 236 00:10:16,580 --> 00:10:19,980 Aħna tista 'tixtieq li jkollhom mazz ta' URLs, mazz ta 'fajls differenti 237 00:10:19,980 --> 00:10:22,930 kollha tieħu fl jintuza mill-utent u jipproduċi output. 238 00:10:22,930 --> 00:10:27,130 >> Iżda hawnhekk huwa l-diżappuntanti ħafna eżempju li I wiegħed aħħar darba, 239 00:10:27,130 --> 00:10:30,130 jiġifieri f'dan il-folder hawn, misspellings. 240 00:10:30,130 --> 00:10:33,680 Allura f'dan il-fajl speller, li aħna mhux se jqattgħu wisq ħin fuq, hemm 241 00:10:33,680 --> 00:10:37,870 essenzjalment porting-- P-O-R-T. Huwa biss il-kelma mogħtija meta, ngħidu aħna, 242 00:10:37,870 --> 00:10:40,800 inti jikkonvertu minn lingwa waħda għall-ieħor manwalment normalment. 243 00:10:40,800 --> 00:10:45,680 >> Din hija portabbiltà ta 'PC verżjoni ta 'speller minn PSET 5. 244 00:10:45,680 --> 00:10:48,856 U jien essenzjalment ippruvaw jikkonvertu linja lilha mill-linja mill-qrib kemm nista '. 245 00:10:48,856 --> 00:10:51,730 Mela jekk inti tixtieq dan it-tip ta 'ħaġa, huwa fil-fatt jiswa f'xi punt 246 00:10:51,730 --> 00:10:54,229 jinġibdu minnhom tnejn up ġenb ġenb u tara x'inhu l-istess 247 00:10:54,229 --> 00:10:55,230 u x'hemm differenti. 248 00:10:55,230 --> 00:10:57,510 Iżda dawn qed pretty darn simili. 249 00:10:57,510 --> 00:11:00,110 Jekk inti tiftakar dak speller anke dehru qishom, 250 00:11:00,110 --> 00:11:02,110 anki jekk inti ma jkollhom jibdlu dan il-fajl, 251 00:11:02,110 --> 00:11:04,860 huwa pjuttost simili strutturalment biss bi ftit 252 00:11:04,860 --> 00:11:06,200 ta 'bidliet hawn u hemm. 253 00:11:06,200 --> 00:11:10,140 >> Allura dan huwa biss biex jgħidu li huwa pjuttost sempliċi biex jikkonvertu speller 254 00:11:10,140 --> 00:11:12,000 minn C sa PHP. 255 00:11:12,000 --> 00:11:15,390 Iżda fl-dizzjunarju, hemm xi ħaġa anke aktar konvinċenti. 256 00:11:15,390 --> 00:11:19,270 Let me imorru quddiem u joħolqu fajl dictionary.php tiegħi stess. 257 00:11:19,270 --> 00:11:24,010 Hekk ftit differenti f'dak aħna ser sejħa hija PHP minflok .c. 258 00:11:24,010 --> 00:11:26,980 Minħabba li dan huwa fajl PHP, I do-- ftit annoyingly-- jkollhom 259 00:11:26,980 --> 00:11:30,132 biex jibdew il-fajl ma tag PHP bħal dik. 260 00:11:30,132 --> 00:11:32,340 U jien ser jimxi 'l quddiem u jiddefinixxu ftit funzjonijiet. 261 00:11:32,340 --> 00:11:35,770 Funzjoni imsejħa verifika, li hija ser tieħu fil-kelma bħal qabel. 262 00:11:35,770 --> 00:11:37,520 Iżda dan l-argument tal- se jkollhom dollaru 263 00:11:37,520 --> 00:11:39,840 jiffirmaw għaliex aħna qed, għal darb'oħra, bl-użu PHP. 264 00:11:39,840 --> 00:11:42,350 Funzjoni oħra mill- dictionary.c kienet tagħbija 265 00:11:42,350 --> 00:11:47,120 u hija ħadet fil-isem ta 'dizzjunarju, so I ser tingħata dik il-funzjoni lesta li tmur. 266 00:11:47,120 --> 00:11:50,920 >> Xulxin dictionary.c kien dak? 267 00:11:50,920 --> 00:11:54,580 Daqs kienet waħda ta 'dawk nicest, fil inqas jekk inti tinżamm xi varjabbli madwar. 268 00:11:54,580 --> 00:11:57,830 hekk daqs biss għandu jirritorna varjabbli. 269 00:11:57,830 --> 00:11:59,090 U mbagħad kien hemm jħottu. 270 00:11:59,090 --> 00:12:02,830 >> Allura kien hemm dawn l-erba funzjonijiet problema stabbiliti 5 271 00:12:02,830 --> 00:12:06,770 li inti meħtieġ biex jimplimentaw xi struttura data jew strutturi. 272 00:12:06,770 --> 00:12:10,170 So I wiegħed li fil PHP, nistgħu jiddikjaraw 273 00:12:10,170 --> 00:12:14,490 tabella hash, per eżempju, dak kollu li aktar faċilment. 274 00:12:14,490 --> 00:12:17,377 Fil-fatt, jekk irrid tabella hash, Jien biss se jmorru bħal dik 275 00:12:17,377 --> 00:12:18,460 u hemm tabella hash tiegħi. 276 00:12:18,460 --> 00:12:21,555 U dak l-nota, diżappuntanti, li aħna jitħalla 'off fuq aħħar darba. 277 00:12:21,555 --> 00:12:23,930 U inti taf liema, jekk jien ridt varjabbli għad-daqs, ukoll, 278 00:12:23,930 --> 00:12:25,867 dan wieħed mhux kollha li differenti minn C, 279 00:12:25,867 --> 00:12:27,450 imma jien ser imorru quddiem u tagħmel dan. 280 00:12:27,450 --> 00:12:28,630 U avviż l-ebda tip ta 'data. 281 00:12:28,630 --> 00:12:31,180 U jien ser imorru lura aktar tard u attwalment żid xi kummenti hawn. 282 00:12:31,180 --> 00:12:32,480 Imma xi ngħidu dwar tagħbija? 283 00:12:32,480 --> 00:12:35,780 >> Jekk dizzjunarju sinjal dollaru huwa l-isem tal-fajl tiegħi 284 00:12:35,780 --> 00:12:39,600 u jien fil-fatt tixtieq li tagħbija kliem fil din it-tabella issa, 285 00:12:39,600 --> 00:12:42,360 I jistgħu attwalment jagħmlu xi ħaġa pjuttost sempliċi. 286 00:12:42,360 --> 00:12:44,880 One-- u dan huwa minorly annoying-- fil-PHP, 287 00:12:44,880 --> 00:12:47,710 għandek tispeċifika ġewwa ta 'funzjoni jekk inti 288 00:12:47,710 --> 00:12:51,060 jridu aċċess xi globali varjabbli thats definita barra. 289 00:12:51,060 --> 00:12:53,530 >> Iżda li mhux partikolarment interessanti dritt issa. 290 00:12:53,530 --> 00:12:57,920 X'hemm aktar interessanti hija din għal kull jibnu dan semmejt aħħar darba. 291 00:12:57,920 --> 00:13:01,880 U jirriżulta li PHP għandu funzjoni imsejħa fajl li l-iskop fil-ħajja 292 00:13:01,880 --> 00:13:05,550 huwa li tiftaħ fajl u jinqraw kollha ta 'linji tagħha fi array 293 00:13:05,550 --> 00:13:06,840 u jgħadduhom lura lejn. 294 00:13:06,840 --> 00:13:12,170 >> Li huwa li jgħidu I tista 'tagħmel dizzjunarju hekk li issa effettivament meta I call fajl, 295 00:13:12,170 --> 00:13:15,472 dan se idejn lili lura firxa ta 'kliem mill-fajl. 296 00:13:15,472 --> 00:13:16,430 Huwa mhux kollha li tajba. 297 00:13:16,430 --> 00:13:20,130 Huwa għadu għaddej biex tkun linja ta 'kliem, lineari xi ħaġa. 298 00:13:20,130 --> 00:13:23,880 Imma I tista 'tmur quddiem u jtenni fuq kull wieħed dawn il-kliem li jużaw 299 00:13:23,880 --> 00:13:25,710 li sintassi rajna fil-qosor aħħar darba. 300 00:13:25,710 --> 00:13:27,940 U tkun taf tara aktar fil-PSET jmiss. 301 00:13:27,940 --> 00:13:32,070 >> Imma issa għandi mtennija loop fuq kull kelma fid-dizzjunarju. 302 00:13:32,070 --> 00:13:36,100 U fuq kull iterazzjoni, recall jien sejħa tal-kelma attwali "kelma." 303 00:13:36,100 --> 00:13:39,790 U dan kollu għaddej biex jieħdu biex tpoġġi kelma fil-dizzjunarju huwa 304 00:13:39,790 --> 00:13:43,530 ser ikunu raden kelma "vera." 305 00:13:43,530 --> 00:13:44,740 C'est daħħal funzjoni tiegħi. 306 00:13:44,740 --> 00:13:46,661 C'est funzjoni tat-tagħbija tiegħi għall-dizzjunarju tiegħi. 307 00:13:46,661 --> 00:13:49,410 Issa huwa daqsxejn ta 'iqarrqu għaliex, inti taf liema, hemm attwalment 308 00:13:49,410 --> 00:13:52,920 backslash n fl-aħħar tal-kliem li għandi probabbilment jeħles, 309 00:13:52,920 --> 00:13:56,380 iżda li mhux problema minħabba PHP funzjoni msejħa CHOP li letteralment 310 00:13:56,380 --> 00:13:58,480 chops off karattru wieħed fl-aħħar ħafna. 311 00:13:58,480 --> 00:13:59,400 Allura l-ebda problema hemmhekk. 312 00:13:59,400 --> 00:14:02,199 Imxejna marret quddiem u fil-fatt jitqassar li għal ftit dan. 313 00:14:02,199 --> 00:14:05,240 U issa I għandhom probabbilment jżommu rekord ta 'daqs, hekk ejja mill-inqas tagħmel this-- 314 00:14:05,240 --> 00:14:05,835 daqs ++. 315 00:14:05,835 --> 00:14:07,339 I tista 'tagħmel dan bħal qabel. 316 00:14:07,339 --> 00:14:10,380 U allura dan huwa probabbilment se taħdem biss multa, b'tali mod li l-ritorn veru. 317 00:14:10,380 --> 00:14:10,930 Isir. 318 00:14:10,930 --> 00:14:11,797 PSET 5. 319 00:14:11,797 --> 00:14:13,545 >> [Rires] 320 00:14:13,545 --> 00:14:14,420 >> DAVID J. Malan: OK. 321 00:14:14,420 --> 00:14:16,628 Aħna qed tmur biex tagħmel dan mill-ġdid mal-PSET jmiss, wisq. 322 00:14:16,628 --> 00:14:18,730 Allura dak dwar id-daqs? 323 00:14:18,730 --> 00:14:22,080 Ukoll, dan huwa wieħed nisperaw huwa dwar kif tista 'tistenna aħħar darba, 324 00:14:22,080 --> 00:14:24,460 għalkemm nagħmel dan il-ħaġa globali stupid. 325 00:14:24,460 --> 00:14:26,610 Huwa biss artifact minn disinn tal-lingwa. 326 00:14:26,610 --> 00:14:28,450 >> Iżda ċċekkja huwa xi ftit aktar interessanti. 327 00:14:28,450 --> 00:14:31,420 Mela jekk jien għadda f'dollari sinjal kelma, I-ewwel 328 00:14:31,420 --> 00:14:34,060 tixtieq li jkollok aċċess għal dik it-tabella varjabbli globali. 329 00:14:34,060 --> 00:14:36,700 U issa jekk irrid li jiċċekkjaw jekk kelma ikun hemm, 330 00:14:36,700 --> 00:14:44,350 I tista 'sempliċement jgħidu jekk huwa veru li dan li ġej huwa stabbilit fit-tabella, 331 00:14:44,350 --> 00:14:49,957 imbagħad imorru quddiem u r-ritorn vera; inkella, ritorn foloz. 332 00:14:49,957 --> 00:14:51,180 Isir. 333 00:14:51,180 --> 00:14:52,440 Nofs l-ieħor ta 'PSET 5. 334 00:14:52,440 --> 00:14:54,540 >> Kull dritt, hekk darb'oħra, jien taqta 'kantunieri ftit. 335 00:14:54,540 --> 00:14:56,831 Fl-ġustizzja, I għandhom probabbilment jonfqu ftit sekondi aktar 336 00:14:56,831 --> 00:14:58,300 fuq din l-implimentazzjoni. 337 00:14:58,300 --> 00:15:01,860 U I probabbilment ma għandhomx mock l- sigħat inti tpoġġi fuq il-PSET tant. 338 00:15:01,860 --> 00:15:04,045 Allura strtolower hija funzjoni. 339 00:15:04,045 --> 00:15:06,670 Xi ħaġa eżistenzjalist simili fis-C, għall-inqas għall-karattri, 340 00:15:06,670 --> 00:15:08,560 iżda li PHP ltqajna verżjoni sħiħa string. 341 00:15:08,560 --> 00:15:11,226 >> Li għaddej biex jisfurzaw kollox li zghar, li xi wħud minnkom 342 00:15:11,226 --> 00:15:14,944 seta 'jsir biex canonicalize liema inti kienu tqegħid fil tiegħek dizzjunarju. 343 00:15:14,944 --> 00:15:16,360 U issa int tista 'tagħmel dan fis-C, wisq. 344 00:15:16,360 --> 00:15:17,780 Dan m'għandha x'taqsam xejn ma PHP. 345 00:15:17,780 --> 00:15:20,260 >> Iżda kwalunkwe ħin għandek kundizzjoni Boolean, 346 00:15:20,260 --> 00:15:22,680 bħal xi ħaġa fuq il-linja 10 hemm, li huwa biss 347 00:15:22,680 --> 00:15:27,145 ser tevalwa lil vera jew falza, u tiegħek jekk inkella b'mod ċar 348 00:15:27,145 --> 00:15:33,620 huwa jirritorna vera jew falza, I jistgħu sempliċiment verament jagħmlu dan sexier 349 00:15:33,620 --> 00:15:38,360 u biss tagħmel xi ħaġa bħal din. 350 00:15:38,360 --> 00:15:40,500 Allura li hemm funzjoni check tiegħi. 351 00:15:40,500 --> 00:15:42,560 Dritt, jekk il Boolean jirritorna vera jew falza, 352 00:15:42,560 --> 00:15:44,630 ejja biss jirritorna emblée. 353 00:15:44,630 --> 00:15:47,340 >> U hemm ftit tweaks oħra I tista 'tagħmel hawn u hemm. 354 00:15:47,340 --> 00:15:51,380 Jħottu Load--, mill-mod, li isir. 355 00:15:51,380 --> 00:15:52,850 X'taqsam xejn hemmhekk. 356 00:15:52,850 --> 00:15:55,840 Peress kollha ta 'l-memorja fil- PHP u ħafna lingwi oħra 357 00:15:55,840 --> 00:15:57,570 huwa attwalment ġestiti għalik. 358 00:15:57,570 --> 00:16:00,330 Allura billi fis-C, kif inti stajt tgħallmu bi tbatija, 359 00:16:00,330 --> 00:16:04,700 xejn inti malloc jew calloc jew realloc, inti għandek yourself ħielsa. 360 00:16:04,700 --> 00:16:08,770 Xi ħaġa li fopen, inti għandek fclose, sabiex ir-riżorsi huma finalment meħlusa 361 00:16:08,770 --> 00:16:11,690 u għodod simili Valgrind ma Avviż u ma jilmentaw, 362 00:16:11,690 --> 00:16:13,570 li hija ħaġa tajba li jimxu fuqhom. 363 00:16:13,570 --> 00:16:16,190 >> Iżda żgur, irid ikun hemm jkun hemm xi qabda, id-dritt? 364 00:16:16,190 --> 00:16:19,400 Inkella, aħna tip ta 'moħli mazz sħiħ ta 'ġimgħat. 365 00:16:19,400 --> 00:16:23,270 Allura hemm xi numru ta 'raġunijiet għaliex aħna tip ta 'tieħu din trajettorja, 366 00:16:23,270 --> 00:16:24,440 iżda hemm kompromess. 367 00:16:24,440 --> 00:16:25,820 Dritt, dan kien tematika. 368 00:16:25,820 --> 00:16:29,690 >> Allura dak jista kompromess hawn jiċċaqalqu, minn C sa PHP? 369 00:16:29,690 --> 00:16:33,250 Jħoss simili kollha jirbaħ s'issa għajr daqsxejn ta 'kruha hawn jew hemm. 370 00:16:33,250 --> 00:16:34,040 Yeah. 371 00:16:34,040 --> 00:16:34,700 X'hemm li? 372 00:16:34,700 --> 00:16:36,064 >> STUDENT: [inaudible] memorja. 373 00:16:36,064 --> 00:16:36,980 DAVID J. Malan: Veloċità. 374 00:16:36,980 --> 00:16:37,479 OK. 375 00:16:37,479 --> 00:16:40,720 Ukoll, il-veloċità tiegħi kien pretty fast. 376 00:16:40,720 --> 00:16:42,020 Dritt? 377 00:16:42,020 --> 00:16:44,320 Iżda veloċità ta 'esekuzzjoni tal-programm? 378 00:16:44,320 --> 00:16:45,580 OK, b'tali mod li punt ġust. 379 00:16:45,580 --> 00:16:50,930 >> Allura kif jiġri, I bil-quddiem cued up kemm soluzzjoni jipprova tiegħi, il-wieħed 380 00:16:50,930 --> 00:16:53,510 Kelli fuq il-bord big kien soluzzjoni bbażata fuq jipprova, 381 00:16:53,510 --> 00:16:55,510 u jien li f'dan id-direttorju hawn. 382 00:16:55,510 --> 00:16:58,510 So I fil-mument, I tista 'tmur quddiem u run dan fuq il-Bibbja James King, 383 00:16:58,510 --> 00:16:59,657 laqtu Ikteb. 384 00:16:59,657 --> 00:17:01,990 U dan huwa wieħed jittama korretta implimentazzjoni fl-aħħar, 385 00:17:01,990 --> 00:17:05,109 tagħti me żmien fit-total ta '0.38 sekondi għal dak 386 00:17:05,109 --> 00:17:07,270 wieħed eżempju kemmxejn arbitrarja. 387 00:17:07,270 --> 00:17:09,270 >> U jekk I issa jmorru fis dan tieni tieqa terminal 388 00:17:09,270 --> 00:17:14,569 hawn fejn I-ewwel tinfetaħ gedit, let me go fis code-- lum li, għal darb'oħra, 389 00:17:14,569 --> 00:17:19,650 Huwa f'dan il-direttorju here-- u let me imorru quddiem u run speller. 390 00:17:19,650 --> 00:17:23,470 Hekk biss tkun ċara, dan huwa l-verżjoni PHP. 391 00:17:23,470 --> 00:17:25,170 Jien biss turi l-quċċata ta 'dan hawn. 392 00:17:25,170 --> 00:17:32,020 >> Hekk jekk I do speller ta tilde CS50 PSET 5 testi, King James, jidħlu. 393 00:17:32,020 --> 00:17:39,700 394 00:17:39,700 --> 00:17:43,050 Huwa għadu aktar mgħaġġla minn kitba dan fis-C, iżda l-ħin totali 395 00:17:43,050 --> 00:17:47,650 huwa, avviż, 0.93, billi tiegħi Implimentazzjoni C bbażati fuq kienet 0.38. 396 00:17:47,650 --> 00:17:49,110 Allura huwa differenza mhux trivjali. 397 00:17:49,110 --> 00:17:51,100 >> U dan huwa biss fuq wieħed fajl. 398 00:17:51,100 --> 00:17:53,480 Jekk ġejt biex imexxu l-tnejn programmi kontra l-bord big 399 00:17:53,480 --> 00:17:56,510 u jkollhom mazz sħiħ ta 'inputs ttestjati, dan ċertament żid up. 400 00:17:56,510 --> 00:18:00,310 U jekk kellna settijiet ta 'data anke akbar, dan, wisq, se jammontaw l-aktar. 401 00:18:00,310 --> 00:18:04,820 Allura iva, tħallas xi prezz ta 'veloċità huwa tabilħaqq il-każ. 402 00:18:04,820 --> 00:18:05,470 X'iktar? 403 00:18:05,470 --> 00:18:08,000 404 00:18:08,000 --> 00:18:08,860 Yeah? 405 00:18:08,860 --> 00:18:10,340 >> STUDENT: Ammont ta 'użu RAM. 406 00:18:10,340 --> 00:18:11,756 >> DAVID J. Malan: Ammont ta 'użu RAM. 407 00:18:11,756 --> 00:18:15,380 So I ma jagħtu t-tieni wieħed ħasbu meta tikteb dan PHP 408 00:18:15,380 --> 00:18:17,300 Verżjoni li kemm memorja I kienet qed tuża. 409 00:18:17,300 --> 00:18:22,080 Jien kompletament tiddifferixxi li biex PHP innifsu u min kiteb dak il-programm. 410 00:18:22,080 --> 00:18:24,500 U li jista 'jkun OK, imma jekk I attwalment verament 411 00:18:24,500 --> 00:18:28,420 jimpurtahom tgħasir prestazzjoni kemm barra mill-programm tiegħi jew barra mill-website tiegħi 412 00:18:28,420 --> 00:18:31,150 jew barra ta 'kwalunkwe għodda Jien bini, forsi 413 00:18:31,150 --> 00:18:33,310 PHP, tabilħaqq, mhuwiex il-lingwa dritt. 414 00:18:33,310 --> 00:18:36,330 >> U fil-fatt, huwa għalhekk li, għall eżempju, web servers-- ħafna 415 00:18:36,330 --> 00:18:38,980 il-programmi attwali li jservu up web content-- 416 00:18:38,980 --> 00:18:41,810 mhumiex miktuba fil-PHP jew fl-Python jew Ruby. 417 00:18:41,810 --> 00:18:44,630 Huma miktuba, bħall- inti issa ser tagħmel ma PSEt 6, 418 00:18:44,630 --> 00:18:48,120 fis-C sabiex inti tista għafas kull daqsxejn ta 'prestazzjoni minnha 419 00:18:48,120 --> 00:18:50,780 u verament jeżerċitaw kontroll fine-grain fuq x'hemm 420 00:18:50,780 --> 00:18:52,980 għaddej minn taħt il- barnuża u mhux biss teħodha 421 00:18:52,980 --> 00:18:54,890 għall mogħtija xi ogħla struttura tad-data livell. 422 00:18:54,890 --> 00:18:58,071 >> Ikkunsidra, wara kollox, min fil-PHP implimentati 423 00:18:58,071 --> 00:19:00,070 dan il-kunċett ta 'hash table-- huwa attwalment aktar 424 00:19:00,070 --> 00:19:04,260 imsejħa validament array-- assoċjattiv ma hu jew hi jkollu ebda idea x'tip 425 00:19:04,260 --> 00:19:07,090 ta 'inputs inti ser ikunu tqegħid fl-istruttura? 426 00:19:07,090 --> 00:19:08,260 Allura ovvjament le, id-dritt? 427 00:19:08,260 --> 00:19:10,340 Huwa għodda ġenerika fil-toolkit li l- 428 00:19:10,340 --> 00:19:13,430 sakemm għal kull min irid li jużawh, u għalhekk żgur 429 00:19:13,430 --> 00:19:17,680 ma jistgħux jiġu ottimizzati finalment għal eżattament dak li inti trid tagħmel. 430 00:19:17,680 --> 00:19:21,180 >> Allura waqt iżvilupp ta 'kummerċ offs-- jista differenti, prestazzjoni jistgħu jvarjaw, 431 00:19:21,180 --> 00:19:23,120 kumplessità jew l-użu tal-memorja jistgħu jvarjaw. 432 00:19:23,120 --> 00:19:24,820 U hekk dak li inti ser issib dejjem hija li hemm 433 00:19:24,820 --> 00:19:26,570 se tkun differenti għodod għall-kummerċ. 434 00:19:26,570 --> 00:19:31,160 U fil-fatt għall-maġġoranza super ta ' proġetti finali tan-nies f'din il-klassi, 435 00:19:31,160 --> 00:19:34,360 jemmnu jew le, C mhux se li tkun il-lingwa dritt għall-użu. 436 00:19:34,360 --> 00:19:37,880 >> U fil-fatt, wieħed mill-takeaways finalment xi klassi bħal dan 437 00:19:37,880 --> 00:19:40,510 huwa li inti tikseb taħseb dwar, ukoll, x'għandek pull off 438 00:19:40,510 --> 00:19:42,710 meta l-ixkaffa trid biex isolvu xi problema. 439 00:19:42,710 --> 00:19:46,720 U fil-fatt, aħna ser jaqsmu dan il-pont saħansitra aktar kif aħna nħarsu lejn aktar lingwi 440 00:19:46,720 --> 00:19:47,920 anke lil hinn llum. 441 00:19:47,920 --> 00:19:50,530 >> Mela ejja tranżizzjoni issa biex forsi kuntest aktar familjari 442 00:19:50,530 --> 00:19:52,480 għall-użu ta 'lingwa bħal PHP. 443 00:19:52,480 --> 00:19:56,720 Huwa kemmxejn komuni li jintużaw fuq kmand tal-linja, bil-miktub skripts 444 00:19:56,720 --> 00:19:59,050 bħal I ma, imma hija ħafna, ħafna aktar komuni. 445 00:19:59,050 --> 00:20:02,350 U kien maħsub li jintuża fl l-forma ta 'fajls li tipikament jispiċċaw 446 00:20:02,350 --> 00:20:05,060 fil .php-- iżda li mhux prerequisite-- 447 00:20:05,060 --> 00:20:07,990 li minnhom infushom jiġġeneraw kontenut tal-web. 448 00:20:07,990 --> 00:20:11,310 >> So let me imorru quddiem u tiftaħ ftit eżempji I ippreparat bil-quddiem. 449 00:20:11,310 --> 00:20:15,100 U dawn huma attwalment tip ta 'veru stejjer fil li waħda mill-ewwel affarijiet 450 00:20:15,100 --> 00:20:18,200 Jien qatt ma myself wara irfinar CS50 u forsi, I think, 451 00:20:18,200 --> 00:20:21,350 Snin CS51 ilu huwa tiegħi roommate u I kienu jgħinu 452 00:20:21,350 --> 00:20:24,320 biex imexxu l-intramurali freshman programm sportiv, li, fil-ħin, 453 00:20:24,320 --> 00:20:28,610 kien freshman jirreġistraw għal diversi isports billi jimla biċċa karta, 454 00:20:28,610 --> 00:20:31,800 bħal ma kienet mitluba, mixi madwar l-tarzna għal Wigglesworth, 455 00:20:31,800 --> 00:20:34,030 u twaqqa f'xi qatra bieb Procter tal. 456 00:20:34,030 --> 00:20:37,210 U allura hu jew hi jgħaddu lilhom u mbagħad fil-fatt email us manwalment 457 00:20:37,210 --> 00:20:39,140 li aħna kienu rreġistrati għal xi sport. 458 00:20:39,140 --> 00:20:41,166 >> Allura ċar, opportunità għal titjib. 459 00:20:41,166 --> 00:20:44,040 Dawn il-ġranet, inti tista 'ddur lejn biss Formoli google, iżda lura fil-ġurnata, 460 00:20:44,040 --> 00:20:46,914 kellna fil-fatt jilħqu for-- dan lanqas ma kienet dik twila ago-- jilħqu 461 00:20:46,914 --> 00:20:49,410 għal programmazzjoni lingwa li ma kienx PHP. 462 00:20:49,410 --> 00:20:51,200 Fiż-żmien, kien xi ħaġa imsejħa Perl, 463 00:20:51,200 --> 00:20:52,890 li marret barra ta 'Vogue peress. 464 00:20:52,890 --> 00:20:54,160 Imma l-idea hija l-istess. 465 00:20:54,160 --> 00:20:58,940 >> U jien essenzjalment sib stabbiliti biex jippruvaw port tmur verżjonijiet Perl biex PHP, 466 00:20:58,940 --> 00:21:03,710 iżda fil caħda ta 'responsabbiltà sħiħa, ma tatx kwalunkwe maħsub li l-estetika għadha biss. 467 00:21:03,710 --> 00:21:04,960 Allura hawnhekk hija paġna web. 468 00:21:04,960 --> 00:21:05,670 Dan huwa fajl. 469 00:21:05,670 --> 00:21:09,470 Jekk I zoom fi, apparentement tagħha imsejħa froshim0.php 470 00:21:09,470 --> 00:21:12,060 sempliċiment għaliex dan huwa l-ewwel tagħna eżempju f'din is-sensiela. 471 00:21:12,060 --> 00:21:15,970 U avviż li hija għandha dak li jidher bħala forma HTML ikrah ħafna, 472 00:21:15,970 --> 00:21:18,680 iżda formola hija interessanti għaliex din tippermetti li 473 00:21:18,680 --> 00:21:21,910 lili biex jipprovdu input utent biex l-browser. 474 00:21:21,910 --> 00:21:27,730 >> Issa aħħar darba meta kellna forma, li min aħna ma jissottomettu parametru tat-talba tagħna, 475 00:21:27,730 --> 00:21:30,450 il-parametru bħal ma kienet mitluba kju? 476 00:21:30,450 --> 00:21:31,330 Allura biex Google, id-dritt? 477 00:21:31,330 --> 00:21:34,090 Aħna totalment punted fuq l-idea ta ' tagħmel xejn ma 'dak input. 478 00:21:34,090 --> 00:21:36,160 >> Imma llum, aħna tibda tipproduċi output. 479 00:21:36,160 --> 00:21:39,420 U l-imġieba jien ser tara hawnhekk inizjalment huwa pjuttost trivjali. 480 00:21:39,420 --> 00:21:42,980 David, jien ser check off-sess hawn, jgħidu Matthews hawn. 481 00:21:42,980 --> 00:21:43,800 I mhux se jkun kaptan. 482 00:21:43,800 --> 00:21:45,410 Jien ser ikklikkja Reġistru. 483 00:21:45,410 --> 00:21:50,720 U avviż li l-URL għandu inbidel għal jirreġistraw 0.php, 484 00:21:50,720 --> 00:21:52,310 u allura hemm dan it-test ikrah hawn. 485 00:21:52,310 --> 00:21:54,460 I taw ebda ħsieb li l-ifformattjar ta 'dan. 486 00:21:54,460 --> 00:21:59,900 >> Imma dak li hu interessanti hu li tliet Valuri kienu apparentement mgħoddija fl. 487 00:21:59,900 --> 00:22:02,960 Dan huwa tip PHP ta ' ekwivalenti għal printf-- 488 00:22:02,960 --> 00:22:06,330 aħna ser tara dak li verament msejjaħ fil bit-- li biss prints out 489 00:22:06,330 --> 00:22:08,300 dak li inti għadda fis dan. 490 00:22:08,300 --> 00:22:11,414 Allura dan jissuġġerixxi li din il-forma kellhom mill-inqas tliet oqsma lilha, 491 00:22:11,414 --> 00:22:12,580 u inti raw lili tip tagħhom fl. 492 00:22:12,580 --> 00:22:15,739 Wieħed kien l-isem tiegħi, wieħed kien sess, wieħed kien dormitory. 493 00:22:15,739 --> 00:22:18,780 U l-kaptan lanqas jiksbu mibgħuta lill l-server minħabba I ma check. 494 00:22:18,780 --> 00:22:22,150 >> Allura dan huwa li jgħidu apparentement, meta inti tissottometti l-affarijiet fuq il-web, 495 00:22:22,150 --> 00:22:26,830 Mhux biss il-URL kultant change-- kultant ma. 496 00:22:26,830 --> 00:22:30,330 Fil-fatt, l-isem fajl mibdula, imma dak li hu assenti mill-URL 497 00:22:30,330 --> 00:22:32,861 li aħna ma tara l-aħħar darba ma 'Google. 498 00:22:32,861 --> 00:22:33,360 Yeah? 499 00:22:33,360 --> 00:22:34,380 >> STUDENT: Nru string query 500 00:22:34,380 --> 00:22:35,220 >> DAVID J. Malan: M'hemm l-ebda string query. 501 00:22:35,220 --> 00:22:37,270 M'hemm l-ebda kwistjoni mark xi ħaġa. 502 00:22:37,270 --> 00:22:40,050 M'hemm l-ebda kwistjoni mark q ugwali qtates, kif għamilna aħħar darba. 503 00:22:40,050 --> 00:22:42,170 U hemm ċertament l-ebda isem kwistjoni mark ugwali 504 00:22:42,170 --> 00:22:46,310 David jew dorm ugwali Matthews, dan meta hija li kollha ser? 505 00:22:46,310 --> 00:22:51,290 >> Well, let me jmorru lura għall gedit hawn u jiftħu l-ewwel ta 'dawn il-fajls 506 00:22:51,290 --> 00:22:57,020 fil vhost tiegħi, ospitanti lokali, pubbliku direttorju hawn u jmorru fil froshim0. 507 00:22:57,020 --> 00:23:02,060 Għalhekk jirriżulta li kważi kollha ta 'din il-paġna huwa biss HTML. 508 00:23:02,060 --> 00:23:05,410 U dan jista 'jkun familjari għalik, iżda malajr se jkun aktar hekk ma PSET 6 509 00:23:05,410 --> 00:23:07,370 u PSET 7 u PSET 8. 510 00:23:07,370 --> 00:23:09,160 Iżda din hija biss paġna HTML. 511 00:23:09,160 --> 00:23:12,400 >> U l-għalf interessanti jidher li jkun hawn. 512 00:23:12,400 --> 00:23:16,290 A forma tag azzjoni tagħhom attribut għandu valur ta 'reġistru 0. 513 00:23:16,290 --> 00:23:18,890 C'est pourquoi I meta jissottomettu dan, din tmur lil dan il-fajl. 514 00:23:18,890 --> 00:23:20,620 Iżda metodu huwa post today-- differenti. 515 00:23:20,620 --> 00:23:23,120 Għalhekk jirriżulta li hemm mill-inqas żewġ metodi fuq il-web użati 516 00:23:23,120 --> 00:23:24,911 biex jibagħtu informazzjoni mill-browser għal server. 517 00:23:24,911 --> 00:23:25,980 Get tqiegħdu fil-URL. 518 00:23:25,980 --> 00:23:27,950 Post tqiegħdu x'imkien ieħor. 519 00:23:27,950 --> 00:23:30,570 U meta u għaliex jista inti fil-fatt tixtieq a website 520 00:23:30,570 --> 00:23:34,110 biex jużaw post allura minflok ta 'nikseb, biss intuwittivament? 521 00:23:34,110 --> 00:23:37,080 Kwalunkwe websajt. 522 00:23:37,080 --> 00:23:42,010 Liema tip ta 'data għandhom jiġu mgħoddija biss b'inferenza issa bil-posta kif oppost 523 00:23:42,010 --> 00:23:45,184 biex tikseb, jekk Rajna iż-żewġ differenzi? 524 00:23:45,184 --> 00:23:46,350 STUDENT: [inaudible] siguri. 525 00:23:46,350 --> 00:23:47,790 DAVID J. Malan: Jekk inti tixtieq xi ħaġa li tkun sigura. 526 00:23:47,790 --> 00:23:50,360 Allura inti tista 'tittajpja password ġo website, karta ta 'kreditu 527 00:23:50,360 --> 00:23:53,030 fi websajt kieku tip ta 'dawn subottimali 528 00:23:53,030 --> 00:23:56,220 jekk il-browser poġġi dik valur ġewwa tal-URL. 529 00:23:56,220 --> 00:23:57,680 Għaliex? 530 00:23:57,680 --> 00:24:00,059 Tara dan, li ma jidhru li huma tali big deal, 531 00:24:00,059 --> 00:24:03,350 iżda odds huma inti pretty spiss timxi bogħod mill-kompjuter jew l-użu tiegħek kompjuter 532 00:24:03,350 --> 00:24:05,310 laboratorji, u għalhekk xi ħadd ieħor jew anke roommate 533 00:24:05,310 --> 00:24:08,220 jistgħu faċilment jimxu up u ara dik l-informazzjoni privata. 534 00:24:08,220 --> 00:24:10,220 Meta inti tibgħat email permezz tal-web, inti probabilment 535 00:24:10,220 --> 00:24:12,350 Ma rridx li jispiċċa data fil-URL kif ukoll. 536 00:24:12,350 --> 00:24:15,266 U hekk hemm kull numru ta 'raġunijiet għaliex aħna tista 'tixtieq li tqiegħed lilha hawn. 537 00:24:15,266 --> 00:24:18,610 U d-dritt photos--, I can not anki pjuttost jimmaġina kif inti tieħu grafika, 538 00:24:18,610 --> 00:24:21,480 bħal JPEG, u poġġih fil-URL. 539 00:24:21,480 --> 00:24:22,330 Inti tista 'tagħmel dan. 540 00:24:22,330 --> 00:24:25,840 Hemm modi ta 'kodifikazzjoni dan, iżda huwa biss mhux sempliċi bħal dik. 541 00:24:25,840 --> 00:24:29,030 >> Allura jirreġistraw 0 huwa attwalment underwhelming ħafna. 542 00:24:29,030 --> 00:24:31,610 Kollha jgħid litteralment huwa dan. 543 00:24:31,610 --> 00:24:35,910 Hija prints out ġewwa ta 'xi HTML tags li ġejjin. 544 00:24:35,910 --> 00:24:38,640 Stajt ltqajna tag PHP hawn nested ġewwa ta 'tag pre. 545 00:24:38,640 --> 00:24:42,300 "Pre" ifisser biss test pre-formatted, mono-spazjati, bħal typewriter. 546 00:24:42,300 --> 00:24:44,836 >> Printr hija funzjoni jirrikorri print. 547 00:24:44,836 --> 00:24:46,710 U allura hemm dan Ħaġa interessanti hawn. 548 00:24:46,710 --> 00:24:48,835 U aħna ser terga 'lura għal din għaliex hemm oħrajn, 549 00:24:48,835 --> 00:24:51,140 iżda enfasizzati sinjal dollaru post jidher li 550 00:24:51,140 --> 00:24:56,110 varjabbli fil-PHP li fihom xejn inti tibgħat mill-browser għal server 551 00:24:56,110 --> 00:24:58,040 gets maħżuna għalik. 552 00:24:58,040 --> 00:25:00,930 U aħna ser tara kif tikseb fuq dik l-informazzjoni qabel twil. 553 00:25:00,930 --> 00:25:04,000 >> Imma l-ewwel, ejja jmorru lura għall- eżempju kemmxejn differenti. 554 00:25:04,000 --> 00:25:09,050 Nidħlu register-- jew pjuttost, froshims1.php, 555 00:25:09,050 --> 00:25:10,470 li jistenna ftit differenti. 556 00:25:10,470 --> 00:25:12,670 I ħa ftit aktar isforz ma ifformattjar, 557 00:25:12,670 --> 00:25:14,370 anki jekk huwa għadu pjuttost ikrah. 558 00:25:14,370 --> 00:25:16,990 Imma jien ser jimxi 'l quddiem u tip "David" issa. 559 00:25:16,990 --> 00:25:17,850 Maskili. 560 00:25:17,850 --> 00:25:19,360 Aħna ser jiċċekkja "kaptan" dan iż-żmien. 561 00:25:19,360 --> 00:25:20,660 Aħna ser nagħmlu Matthews. 562 00:25:20,660 --> 00:25:22,430 U jirreġistraw. 563 00:25:22,430 --> 00:25:24,110 >> U din id-darba jgħid, hm, mhux verament. 564 00:25:24,110 --> 00:25:26,180 Kull dritt, hekk dak li tirreġistra 1? 565 00:25:26,180 --> 00:25:30,509 Let me go fis f'reġistru miftuħ 1 hm and--. 566 00:25:30,509 --> 00:25:32,300 Kull dritt, hekk din hija interessanti, u dan 567 00:25:32,300 --> 00:25:34,880 huwa sies issa lejn programmi aktar interessanti. 568 00:25:34,880 --> 00:25:38,970 >> Avviż tal-quċċata ta 'dan il-fajl għandu Tag PHP kif ukoll xi kummenti. 569 00:25:38,970 --> 00:25:42,590 U dawn huma, għal issa, distrazzjoni Mela ejja biss jeħles dawk il-kummenti 570 00:25:42,590 --> 00:25:47,070 eżatt bħal dawn qed fil C. U jien titlob ma 'dan il blokki ta' kodiċi bi kumment 571 00:25:47,070 --> 00:25:49,280 li dan il-kodiċi huwa validazzjoni tal-preżentazzjoni. 572 00:25:49,280 --> 00:25:51,690 >> Ukoll, jirriżulta li varjazzjonijiet bħall sinjal dollaru 573 00:25:51,690 --> 00:25:53,739 jenfasizzaw post huma imsejħa globals super. 574 00:25:53,739 --> 00:25:55,530 Huma qed simili dawn varjabbli globali speċjali 575 00:25:55,530 --> 00:25:58,840 li huma biss omni-preżent disponibbli fi ħdan il-programm tiegħek. 576 00:25:58,840 --> 00:26:03,870 U tista 'tuża notazzjoni parentesi kwadri indiċi ġo fihom ma jużaw numri 577 00:26:03,870 --> 00:26:07,460 bħall 0, 1, 2, 3, iżda kliem attwali. 578 00:26:07,460 --> 00:26:12,100 >> Allura inti tista 'taħseb sinjal dollaru jenfasizzaw post bħala tip ta 'tabella hash 579 00:26:12,100 --> 00:26:15,920 li inti tista 'tgħaddi ewlieni fis, Lookup kelma fil-bejn il-parentesi kwadri, 580 00:26:15,920 --> 00:26:19,370 u li għaddej biex jagħtuk lura l- valur li l-utent attwalment ipprovdut. 581 00:26:19,370 --> 00:26:21,210 PHP għandu funzjoni imsejħa vojta li ftit 582 00:26:21,210 --> 00:26:23,720 jgħid iva jew le, dan varjabbli hijiex vojta jew le. 583 00:26:23,720 --> 00:26:27,250 Għandna dawn bars doppja, li ifisser biss jew, bħal fil C. 584 00:26:27,250 --> 00:26:31,740 >> Allura fil-fatt, din il-linja 4 huwa biss qal jekk l-utent ma tatx isem 585 00:26:31,740 --> 00:26:36,540 jew ma tatx sess jew ma tagħti dorm, imorru quddiem u jagħtu direzzjoni ġdida lilu 586 00:26:36,540 --> 00:26:38,184 jew lilha permezz ta 'dan linja hawn. 587 00:26:38,184 --> 00:26:40,600 Allura dan huwa ftit cryptic, iżda dan ifisser biss litteralment 588 00:26:40,600 --> 00:26:43,330 mur lura għall-dan il-post, għalhekk punts-utent 589 00:26:43,330 --> 00:26:45,420 lura kull fejn hu jew hi daħlet minn. 590 00:26:45,420 --> 00:26:47,880 Imma hija inelegant ftit f'dak I iebes kodifikati dan. 591 00:26:47,880 --> 00:26:52,150 >> Imma x'jiġri jekk dan jekk il-kundizzjoni ma tevalwa l vera? 592 00:26:52,150 --> 00:26:55,790 X'jiġri jekk l-utent ma tagħti me tiegħu jew l-isem tagħha u dorm u s-sess? 593 00:26:55,790 --> 00:26:58,540 Li jekk il-kundizzjoni mhux ser tevalwa l veru, 594 00:26:58,540 --> 00:27:00,650 so I ma hit l-ħruġ fil-linja 7. 595 00:27:00,650 --> 00:27:01,680 Allura x'jiġri? 596 00:27:01,680 --> 00:27:03,880 U dan huwa dak i interessanti dwar PHP. 597 00:27:03,880 --> 00:27:07,470 >> Inti tista 'qatra fi u barra tal-mod PHP, biex ngħidu hekk. 598 00:27:07,470 --> 00:27:10,985 Jekk inti tixtieq xi kodiċi li tesegwixxi, inti tista 'tiftaħ u tagħlaq tag PHP 599 00:27:10,985 --> 00:27:13,010 u mqiegħda kodiċi hemmhekk bħal I ghamilt hawn. 600 00:27:13,010 --> 00:27:16,810 Hekk kif inti qrib il-lametta PHP, il-server 601 00:27:16,810 --> 00:27:19,407 huwa biss se bżiq kwalunkwe inti tpoġġi hemmhekk. 602 00:27:19,407 --> 00:27:21,740 U fil-fatt, dan kien parti mill- id-disinn oriġinali ta 'PHP, 603 00:27:21,740 --> 00:27:25,280 għal aħjar għall-agħar, kien dan taħlit flimkien ta 'kodiċi u Markup 604 00:27:25,280 --> 00:27:25,920 lingwa. 605 00:27:25,920 --> 00:27:28,670 U aħna ser tara li dan ħafna malajr tappartjeni ġo mess. 606 00:27:28,670 --> 00:27:31,280 U hekk aħna ser nagħmlu aħjar minn Dan fl-aħħar, iżda biss 607 00:27:31,280 --> 00:27:35,620 avviż l-faċilità li biha jien verament kapaċi li tesegwixxi xi loġika. 608 00:27:35,620 --> 00:27:37,440 >> Iżda għadu daqsxejn underwhelming. 609 00:27:37,440 --> 00:27:41,210 Ejja jiftħu verżjoni tnejn mill IMs Frosh, li 610 00:27:41,210 --> 00:27:44,270 apparentement jissottometti lill register2.php. 611 00:27:44,270 --> 00:27:47,600 Allura dan il-fajl attwalment għaddejjin tfittex kważi l-istess. 612 00:27:47,600 --> 00:27:50,780 Jien se jmorru biex Frosh IMs 2. 613 00:27:50,780 --> 00:27:53,050 Iżda fil Frosh IMs 2, ejja ara dak li jiġri. 614 00:27:53,050 --> 00:27:58,110 >> David, ikklikkja l-buttuna tar-radju, kif huwa msejjaħ; Matthews, ebda kaptan. 615 00:27:58,110 --> 00:27:59,230 Reġistru. 616 00:27:59,230 --> 00:28:00,130 Inti huma reġistrati. 617 00:28:00,130 --> 00:28:00,700 Mhux tassew. 618 00:28:00,700 --> 00:28:02,574 Oh stenna, aħna biss għamlet li eżempju, ma we? 619 00:28:02,574 --> 00:28:04,520 Kull dritt, stand by. 620 00:28:04,520 --> 00:28:06,602 Aħna ser nagħmlu l-tlieta. 621 00:28:06,602 --> 00:28:08,560 Ovvjament xi ħaġa huwa madwar jseħħ bil Gmail. 622 00:28:08,560 --> 00:28:09,600 Aħna ser naslu s'hemm. 623 00:28:09,600 --> 00:28:11,900 >> Allura Frosh IMs 3 tidher bħal dan. 624 00:28:11,900 --> 00:28:13,050 Ebda differenti. 625 00:28:13,050 --> 00:28:19,850 Imma meta I do David, raġel, Matthews, u jirreġistraw, din it-tielet u l-aħħar verżjoni 626 00:28:19,850 --> 00:28:22,230 pretensjonijiet, pjuttost sempliċi, inti huma rreġistrati verament. 627 00:28:22,230 --> 00:28:23,560 C'est tip ta immaterjali. 628 00:28:23,560 --> 00:28:25,600 Imma nitlob ma 'dan tielet u laħħar verżjoni 629 00:28:25,600 --> 00:28:30,610 I issa recreated eżattament dak tiegħi roommate u I mibnija għall-IMs Frosh 630 00:28:30,610 --> 00:28:31,731 snin tal-programm ilu. 631 00:28:31,731 --> 00:28:32,480 U kien sempliċi. 632 00:28:32,480 --> 00:28:34,330 Ma kien hemm ebda database, ebda spreadsheet Excel. 633 00:28:34,330 --> 00:28:36,450 Iżda aktar importanti, ma kien hemm l-ebda karta aktar 634 00:28:36,450 --> 00:28:42,520 għaliex dak li għamilna ma 'dan il-programm kien li fil-fatt email Procter, li 635 00:28:42,520 --> 00:28:44,530 kien jirċievi qabel dawn l-affarijiet permezz ta 'forom. 636 00:28:44,530 --> 00:28:48,890 >> U apparentement konna programmati dan b'tali mod li meta xi ħadd reġistri, 637 00:28:48,890 --> 00:28:52,470 Kont emails john Harvard tal- proctor-- jew ruħu f'dan il-każ, 638 00:28:52,470 --> 00:28:55,960 John Harvard-- li ġej text-- "Din il-persuna biss reġistrata." 639 00:28:55,960 --> 00:29:00,560 Isem huwa David, kaptan huwa vojt; sess, maskili; u dorm, Matthews. 640 00:29:00,560 --> 00:29:01,560 >> Allura dak li ġara hemmhekk? 641 00:29:01,560 --> 00:29:05,360 Ukoll, il-fajl in kwistjoni hawnhekk hija apparentement register3.php. 642 00:29:05,360 --> 00:29:09,080 U jekk I miftuħa dan, tkun taf tara kemm il-qawwa ta 'kodiċi bħal dan 643 00:29:09,080 --> 00:29:12,380 u wkoll, franchement, il-insigurtà ta 'sistema bħall-email. 644 00:29:12,380 --> 00:29:16,290 I għadek effettiv preti li jkun John Harvard fil-mod li ġej. 645 00:29:16,290 --> 00:29:20,920 >> Għandi l-tikketta PHP miftuħ top up, li biss jgħid hawnhekk jidħol xi kodiċi PHP. 646 00:29:20,920 --> 00:29:23,155 Down hawn, dawriet hemmhekk huma libreriji PHP. 647 00:29:23,155 --> 00:29:26,410 Inti biss ma għandekx bżonn li jinkludu fajls header kemm. 648 00:29:26,410 --> 00:29:28,900 Ikollok aktar mal- sink tal-kċina, biex ngħidu hekk. 649 00:29:28,900 --> 00:29:31,820 >> Iżda dan iż-żmien fil-linja 4, I do tixtieq li librerija speċjali msejħa 650 00:29:31,820 --> 00:29:36,087 Mailer PHP, li hija xi ħaġa li għandek jistgħu jinstallaw b'xejn f'ħafna sistemi. 651 00:29:36,087 --> 00:29:37,920 Down hawn jien validazzjoni il-preżentazzjoni biss 652 00:29:37,920 --> 00:29:40,540 billi tiċċekkja ma jagħti lill-utent me isem, l-ġeneru, u dorm. 653 00:29:40,540 --> 00:29:44,130 U jekk iva, imorru quddiem u instantiate mailer. 654 00:29:44,130 --> 00:29:47,020 >> Inti tista 'taħseb dan bħala linja tal-kodiċi li ftit jalloka. 655 00:29:47,020 --> 00:29:48,950 Huwa simili malloc, iżda huwa sexier ftit 656 00:29:48,950 --> 00:29:51,790 f'dak inti ssemmi mhux biss malloc u xi numru ġeneriċi. 657 00:29:51,790 --> 00:29:55,030 You say tagħti me waħda minn dawn, tagħti me waħda ġdida ta 'dawn. 658 00:29:55,030 --> 00:29:57,950 >> U jekk inti stajt programmati Java jew C ++ jew lingwi oħra, 659 00:29:57,950 --> 00:29:59,130 inti tista raw dan. 660 00:29:59,130 --> 00:30:01,840 Iżda l-qasir ta 'dan, jekk familjari, din il-linja 661 00:30:01,840 --> 00:30:05,410 jqiegħed fis mail sinjal dollaru a Struct speċjali msejħa 662 00:30:05,410 --> 00:30:08,731 oġġett li jkun built-in funzjonalità email. 663 00:30:08,731 --> 00:30:10,355 U fil-fatt, avviż u s-sintassi simili. 664 00:30:10,355 --> 00:30:11,900 >> Din mhix pointer, per se. 665 00:30:11,900 --> 00:30:13,990 PHP biss tuża l-istess sintassi. 666 00:30:13,990 --> 00:30:17,660 Din il-linja huwa qal użu SMTP-- Trasferiment Sempliċi Mail 667 00:30:17,660 --> 00:30:20,900 Protokoll, li huwa biss l- protokoll użat biex tibgħat posta. 668 00:30:20,900 --> 00:30:24,240 Dan huwa jispeċifikaw użu Server SMTP Harvard, li 669 00:30:24,240 --> 00:30:25,830 huwa x'imkien hawn fuq il-kampus. 670 00:30:25,830 --> 00:30:28,480 >> Dan huwa qal dak TCP port numru biex jitkellem, 671 00:30:28,480 --> 00:30:31,650 u I biss dehret li minn googling jew billi jitolbu lill help desk. 672 00:30:31,650 --> 00:30:34,640 U mbagħad minħabba Harvard xi użi sigurtà tas-sistema fuq il-server-- posta 673 00:30:34,640 --> 00:30:37,060 inqas għall-kriptaġġ traffiku bejnek u, 674 00:30:37,060 --> 00:30:41,380 anki jekk xi ħadd jista 'jibgħat lill it-- Jien ser jduru fuq il-protokoll TLS 675 00:30:41,380 --> 00:30:42,710 għaż-żamma dan sigur. 676 00:30:42,710 --> 00:30:44,730 >> Iżda din hija fejn l-affarijiet jiksbu ftit scary. 677 00:30:44,730 --> 00:30:47,970 I tista 'sempliċement arbitrarju ngħid li jien jharvard, 678 00:30:47,970 --> 00:30:51,930 u I tista 'sempliċement arbitrarju email myself hawn. 679 00:30:51,930 --> 00:30:55,650 U allura nista 'tispeċifika suġġett ma 'din il-linja hawn. 680 00:30:55,650 --> 00:30:58,460 >> U dan biss jistenna ikrah, imma hija biss mazz ta 'konkatenazzjoni. 681 00:30:58,460 --> 00:31:04,480 Jinstabx PHP simbolu super utli, bħal xi lingwi, l-operatur dot, 682 00:31:04,480 --> 00:31:07,340 li ftit litteralment concatenates string wara string wara string, 683 00:31:07,340 --> 00:31:09,810 u inti ma għandekx malloc jew figura out-tul totali tas-sekwenza. 684 00:31:09,810 --> 00:31:10,820 Inti biss tagħmel dan. 685 00:31:10,820 --> 00:31:15,220 U fil-fatt, għaliex jien concatenating fil kollha ta 'dawn l-affarijiet ma' dawn tikek, 686 00:31:15,220 --> 00:31:18,330 hu għalhekk li l-email I mibgħuta ħares kif għamlet. 687 00:31:18,330 --> 00:31:20,610 >> U mbagħad fl-aħħar hawn, jien tibgħat posta. 688 00:31:20,610 --> 00:31:22,580 Hekk jekk dan huwa falz, Jien biss ser die, 689 00:31:22,580 --> 00:31:25,680 li huwa funzjoni li biss prints għall-iskrin xi messaġġ ta 'żball. 690 00:31:25,680 --> 00:31:29,170 Iżda huwa, fil-fatt, ssejjaħ il-funzjoni jibgħat. 691 00:31:29,170 --> 00:31:31,780 Inkella, jekk dan kollu jonqos, redirects me lura hawn. 692 00:31:31,780 --> 00:31:34,050 >> U għaliex ma nara li Jien reġistrati tassew? 693 00:31:34,050 --> 00:31:36,110 Ukoll, dan ġara dritt hawn. 694 00:31:36,110 --> 00:31:38,170 So I iġibu dan up għal ftit ta 'raġunijiet. 695 00:31:38,170 --> 00:31:41,542 >> Wieħed, dan huwa eżattament kif jekk inti tibni xi websajt għal proġett finali 696 00:31:41,542 --> 00:31:44,000 jew għad-dinja reali, dan huwa kif inti tibgħat tfakkiriet email 697 00:31:44,000 --> 00:31:45,924 lill-klijenti tiegħek jew abbonati tiegħek. 698 00:31:45,924 --> 00:31:47,590 Din hija kif inti tibgħat tfakkiriet password. 699 00:31:47,590 --> 00:31:50,760 Din hija kif inti tibgħat messaġġi nies li dawn ikollhom Facebook ġdida 700 00:31:50,760 --> 00:31:52,990 messaġġ pendenti jew xi ħaġa bħal dik. 701 00:31:52,990 --> 00:31:55,010 >> Iżda huwa wkoll titkellem biex il-fatt li dan jista ' 702 00:31:55,010 --> 00:31:58,160 ġew ukoll ħafna minn Davin jew xi ħadd ieħor. 703 00:31:58,160 --> 00:32:00,567 U jien ngħid dan it-tip ta ' bi tbissima għaliex jien 704 00:32:00,567 --> 00:32:03,400 pjuttost ċert x'inhu għaddej permezz diversi imħuħ tiegħek f'dan il-punt. 705 00:32:03,400 --> 00:32:11,910 Iżda dan huwa wieħed minn dawk jagħmlu bħala I jgħidu, mhux bħala I do tip ta 'affarijiet, 706 00:32:11,910 --> 00:32:14,480 minħabba li huwa wieħed trivjali ssawwar emails bħal dan. 707 00:32:14,480 --> 00:32:16,480 Imma kif inti tista raw jew taqra fil-Crimson, 708 00:32:16,480 --> 00:32:18,271 ta tard huwa wkoll pretty trivjali għal nies 709 00:32:18,271 --> 00:32:20,050 li jintraċċaw lura għal xi oriġini. 710 00:32:20,050 --> 00:32:23,790 U jistaqsu lili xi żmien, forsi waqt l-ikla CS50, kif I ewwel 711 00:32:23,790 --> 00:32:27,080 ltqajna familjari mill-qrib ħafna kważi l-bord ed ħafna snin 712 00:32:27,080 --> 00:32:30,890 ilu meta skoprejt kif l-internet maħduma. 713 00:32:30,890 --> 00:32:36,940 Allura fi kwalunkwe case-- ftit wara l-bord ed għamlet. 714 00:32:36,940 --> 00:32:42,300 >> Allura fi kwalunkwe każ, ikun hemm mazz sħiħ ta 'globals super, 715 00:32:42,300 --> 00:32:45,960 kif dawn qed jissejjaħ hawn, li waħda minnhom aħna saw-- dollaru jenfasizzaw sinjal post. 716 00:32:45,960 --> 00:32:49,530 Hemm kontroparti imsejjaħ get, li huwa fejn Jittieħed mill URL 717 00:32:49,530 --> 00:32:50,690 jispiċċa għaddejjin. 718 00:32:50,690 --> 00:32:54,051 U hemm mazz sħiħ ta 'oħrajn, sessjoni too-- u server u cookie. 719 00:32:54,051 --> 00:32:55,800 Aħna ser jiġu lura cookie xi żmien ieħor, 720 00:32:55,800 --> 00:33:01,340 iżda sessjoni huwa tip ta 'kessaħ minħabba dritt now-- sal now-- 721 00:33:01,340 --> 00:33:06,350 kollox aħna ghamilt ma 'web browser huwa tip ta 'mingħajr stat, biex ngħidu hekk. 722 00:33:06,350 --> 00:33:10,060 I jistgħu ikklikkja madwar, aċċess fajls fuq is-server, xi ħaġa 723 00:33:10,060 --> 00:33:13,500 jiġri fuq l-iskrin, iżda allura l-konnessjoni jagħlaq. 724 00:33:13,500 --> 00:33:17,450 L Explorer Internet jew il- Icon Firefox waqfiet għażil 725 00:33:17,450 --> 00:33:20,340 u inti biss tara dak dik il-paġna web fiha. 726 00:33:20,340 --> 00:33:23,530 >> Allura HTTP hija mingħajr Stat f'dik ladarba jagħmel konnessjoni, 727 00:33:23,530 --> 00:33:25,050 gets xi data, thats it. 728 00:33:25,050 --> 00:33:29,940 Ebda konnessjoni aktar, b'differenza Skype, b'differenza FaceTime, GChat b'differenza, li 729 00:33:29,940 --> 00:33:32,180 żżomm kostanti konnessjoni mal-server. 730 00:33:32,180 --> 00:33:34,650 Il-web huwa fundamentalment skonnettjata, għalkemm aħna ser 731 00:33:34,650 --> 00:33:36,630 tara qabel twil kif nistgħu jissimulaw affarijiet 732 00:33:36,630 --> 00:33:39,300 bħal Facebook chat u GChat, li jżommu l-illusion-- 733 00:33:39,300 --> 00:33:41,680 jew fil-fatt jagħmlu jżommu konnessjoni kostanti użu 734 00:33:41,680 --> 00:33:43,270 aktar teknoloġija moderna. 735 00:33:43,270 --> 00:33:49,000 >> Imma jekk immur, jgħidu, counter.php, dan huwa eżempju ieħor sempliċi, 736 00:33:49,000 --> 00:33:52,700 kif aħna ser tara, li bħalissa jaħseb I żar is-sit ħin żero. 737 00:33:52,700 --> 00:33:56,790 Imma jekk I sempliċiment rikarigu-paġna, qualche jaf I kien hawn qabel. 738 00:33:56,790 --> 00:33:58,840 Jekk I rikarigu darb'oħra, dan jaf I kien hawn qabel. 739 00:33:58,840 --> 00:34:01,100 U għal darb'oħra u għal darb'oħra u għal darb'oħra u għal darb'oħra. 740 00:34:01,100 --> 00:34:03,610 >> Allura hemm xi plus-plussing għaddejjin, iżda avviż 741 00:34:03,610 --> 00:34:07,090 il-ħaġa ftit spins dejjem hekk qosor top up u mbagħad disconnects, 742 00:34:07,090 --> 00:34:11,179 hekk mhuwiex simili I jkollhom kostanti konnessjoni mal appliance tiegħi. 743 00:34:11,179 --> 00:34:16,929 Ukoll, jekk I tmur fis counter.php, avviż kif huwa sempliċi. 744 00:34:16,929 --> 00:34:19,080 I l-ewwel sejħa dan speċjali funzjoni li aħna ser dalwaqt 745 00:34:19,080 --> 00:34:21,513 tibda tieħu għall mogħtija imsejħa sessjoni bidu. 746 00:34:21,513 --> 00:34:22,179 Ibda sessjoni. 747 00:34:22,179 --> 00:34:25,095 >> U sessjoni issa huwa biss se tkun barmil, bħal shopping 748 00:34:25,095 --> 00:34:28,120 cart fejn inti tista 'tpoġġi l-valuri u tip ta 'fiduċja bħala programmer 749 00:34:28,120 --> 00:34:31,590 li dawn qed tmur biex jkun hawn meta dak l-utent jiġi back-- tieni 750 00:34:31,590 --> 00:34:35,670 aktar tard, siegħa tard, anki sena wara, sakemm hu jew hi ma tkunx ċara 751 00:34:35,670 --> 00:34:37,602 cookies tagħhom, kif aħna ser eventwalment tara. 752 00:34:37,602 --> 00:34:39,310 U issa I biss għandhom IF kundizzjoni hawn. 753 00:34:39,310 --> 00:34:44,679 Mela jekk iċ-ċavetta ta 'wara, imsejħa counter, huwa stabbilit ġewwa 754 00:34:44,679 --> 00:34:49,210 ta 'dan super global-- dan hash tabella, jekk inti will-- imsejħa sessjoni, 755 00:34:49,210 --> 00:34:53,350 imbagħad imorru quddiem u grab- valur mill-think session-- 756 00:34:53,350 --> 00:34:55,250 ta 'dan bħala shopping cart-- u jaħżnu 757 00:34:55,250 --> 00:34:57,680 fil-varjabbli temporanju msejjaħ counter. 758 00:34:57,680 --> 00:35:02,240 >> Inkella, jekk dak kontro-valur kien mhux stabbiliti fl-hekk imsejħa shopping cart, 759 00:35:02,240 --> 00:35:04,430 biss initialize dan għal 0. 760 00:35:04,430 --> 00:35:09,830 Fl-aħħar nett, stabbiliti hawn, mur u li jqiegħdu lura fil-carts shopping jew s-sessjoni 761 00:35:09,830 --> 00:35:13,000 il-valur ta 'counter +1. 762 00:35:13,000 --> 00:35:16,730 Għalhekk jirriżulta li dan here-- kontenitur speċjali 763 00:35:16,730 --> 00:35:20,355 li, għal darb'oħra, hija waħda minn dawn assoċjat arrays, firxa li inti tista indiċi 764 00:35:20,355 --> 00:35:25,010 fis-kliem minflok numbers-- tippersisti anki wara l-utent tmur bogħod. 765 00:35:25,010 --> 00:35:26,510 Għal darb'oħra, I ser imorru lura għall-paġna issa. 766 00:35:26,510 --> 00:35:28,400 Huwa kien minuta jew hekk. 767 00:35:28,400 --> 00:35:31,300 Iżda huwa jiftakar li stajt kien hawn 19 darbiet qabel. 768 00:35:31,300 --> 00:35:32,740 Dan huwa żjara 20. tiegħi. 769 00:35:32,740 --> 00:35:36,560 >> U għalhekk dan se jkun kruċjali għas- implimentazzjoni ta 'kwalunkwe websajt li jiftakar 770 00:35:36,560 --> 00:35:40,640 li int illoggjat, li inti tpoġġi xi ħaġa litterali fil shopping cart tiegħek 771 00:35:40,640 --> 00:35:43,902 li jixtru jew li għandek xi numru ta 'messaġġi pendenti. 772 00:35:43,902 --> 00:35:45,610 Ghaċ tixtieq ftakar informazzjoni, 773 00:35:45,610 --> 00:35:48,130 aħna ser tara li PHP, bħal f'diversi lingwi oħra, 774 00:35:48,130 --> 00:35:53,640 tagħtina din illużjoni ta 'stat anki jekk, kif tkun taf tara fil PSET 6, 775 00:35:53,640 --> 00:35:57,642 kif int tagħmel talbiet HTTP mill-klijent għal server, thats it. 776 00:35:57,642 --> 00:35:59,850 Ladarba inti tikseb lura li rispons, hemm xejn aktar 777 00:35:59,850 --> 00:36:01,790 ġejjin lura mis-server awtomatikament. 778 00:36:01,790 --> 00:36:03,820 Iżda aħna ser tara kif taħdem madwar dik. 779 00:36:03,820 --> 00:36:07,430 >> Ukoll issa, ejja jippruvaw tnaddaf dan up ftit. 780 00:36:07,430 --> 00:36:09,470 Rajna ftit eżempji differenti hemmhekk. 781 00:36:09,470 --> 00:36:12,250 Oh, u bħala twarrib, għall- dawk familjari jew familjari, 782 00:36:12,250 --> 00:36:14,230 r-raġuni li l- Eżempju Frosh IMs marru 783 00:36:14,230 --> 00:36:18,060 minn tfittex verament ikrah li slightly-- sew, 784 00:36:18,060 --> 00:36:23,160 xorta ugly-- għal kemmxejn inqas ikrah għalkemm għadu ikrah 785 00:36:23,160 --> 00:36:25,230 huwa minħabba li jekk inħarsu fil-kodiċi tas-sors hawnhekk, 786 00:36:25,230 --> 00:36:28,240 jirriżulta li għandi din fuq nett tal-fajl. 787 00:36:28,240 --> 00:36:32,570 >> Jirriżulta li bootstrap hija waħda mill-ħafna libreriji liberament disponibbli hemmhekk 788 00:36:32,570 --> 00:36:37,140 li jeżistu mhux għal lingwi ta 'programmar dejjem, iżda għal CSS jew għal JavaScript 789 00:36:37,140 --> 00:36:39,190 jew HTML jew kwalunkwe numru ta 'lingwi. 790 00:36:39,190 --> 00:36:42,160 >> U dawn folks here-- oriġinarjament ħareġ 791 00:36:42,160 --> 00:36:44,730 ta Twitter-- biss ikollhom mazz sħiħ ta 'stili. 792 00:36:44,730 --> 00:36:47,360 Huwa fajl enormi hawnhekk li xi ħadd kiteb, 793 00:36:47,360 --> 00:36:51,020 jew xi ħadd kiteb, matul iż-żmien li jispeċifika kuluri u l-ifformattjar 794 00:36:51,020 --> 00:36:53,740 u whatnot hekk li nista ' tip ta 'jissellef sintassi tagħhom 795 00:36:53,740 --> 00:36:56,157 u li ma jkollhom biex insemmu kif jistabbilixxu l-forma tiegħi. 796 00:36:56,157 --> 00:36:57,990 Dan huwa wkoll minified hekk li l-kompjuter jista ' 797 00:36:57,990 --> 00:37:00,560 jifhimha imma mhux neċessarjament bniedem. 798 00:37:00,560 --> 00:37:03,050 Allura dan huwa biss għaliex l- stylization hemm inbidlu. 799 00:37:03,050 --> 00:37:05,450 >> Imma ejja issa jagħmel aħjar f'termini ta 'disinn, 800 00:37:05,450 --> 00:37:07,490 għaliex jekk aħna nibqgħu isfel din it-triq twil wisq, 801 00:37:07,490 --> 00:37:11,290 kodiċi tagħna għaddej biex jiksbu messy u Messier. 802 00:37:11,290 --> 00:37:13,040 Mela ejja tiffoka fuq dawn l-eżempji hawn. 803 00:37:13,040 --> 00:37:15,090 L-aħħar għal-lum. 804 00:37:15,090 --> 00:37:18,720 >> Allura hawnhekk huwa super sempliċi Verżjoni 1.0 tal-websajt CS50 tal. 805 00:37:18,720 --> 00:37:21,250 Hija biss għandha links għall lectures u sillabu, 806 00:37:21,250 --> 00:37:25,490 u huwa tuża dik il-lista unordered tag---tikketta UL li aħna użati aħħar darba. 807 00:37:25,490 --> 00:37:28,800 U jekk fil-fatt, jekk I jiftħu View Page Sors, 808 00:37:28,800 --> 00:37:31,710 tkun taf tara li dan huwa tassew, tassew sempliċi HTML. 809 00:37:31,710 --> 00:37:35,460 U fil-fatt, anke jekk din hija fajl PHP taħt il-barnuża, 810 00:37:35,460 --> 00:37:38,620 huwa għadu biss tobżoq out HTML biss għal issa. 811 00:37:38,620 --> 00:37:41,312 >> Hekk jekk I ikklikkja fuq Lectures, naraw dan iseħħ. 812 00:37:41,312 --> 00:37:43,020 U jekk I ikklikkja fuq ġimgħa żero, naraw dan. 813 00:37:43,020 --> 00:37:44,920 U jekk I ikklikkja fuq L-Erbgħa, naraw dan. 814 00:37:44,920 --> 00:37:47,900 U dan apparentement kienet il-PDF tal-pjastri mill dik il-ġurnata. 815 00:37:47,900 --> 00:37:52,020 All I ghamilt hija rabta ma ' ankra tag għal dan il-URL hawn. 816 00:37:52,020 --> 00:37:55,400 >> Allura dan huwa biss li jgħidu li dan huwa pretty Verżjoni sempliċi ta 'website CS50 tal. 817 00:37:55,400 --> 00:37:56,790 Ejja naraw kif dan jiġi implimentat. 818 00:37:56,790 --> 00:38:01,240 Jekk I tmur fil-direttorju mvc0, Ser naraw fajls ftit. 819 00:38:01,240 --> 00:38:03,250 Wieħed huwa README, hekk jekk xi wħud minn dan huwa wisq malajr, 820 00:38:03,250 --> 00:38:05,166 inti tista 'biss poke madwar aktar komda aktar tard. 821 00:38:05,166 --> 00:38:07,930 U avviż fil hawn huwa fajl index.php. 822 00:38:07,930 --> 00:38:09,960 Jirriżulta li jekk inti stess, il-bniedem, 823 00:38:09,960 --> 00:38:14,460 ma jispeċifikawx isem finali URL, il-web server normalment 824 00:38:14,460 --> 00:38:17,010 tiddeduċi xi isem default għalik. 825 00:38:17,010 --> 00:38:20,060 Indiċi dot xi ħaġa hija ġeneralment l-inadempjenza. 826 00:38:20,060 --> 00:38:23,010 >> B'tali mod li għalhekk mument ilu meta żort dan il-URL hawn, 827 00:38:23,010 --> 00:38:26,750 ebda isem fajl, ebda fajl estensjoni, l-ebda perjodu fil-URL. 828 00:38:26,750 --> 00:38:29,710 Hija biss kienu jafu b'xi magically biex tfittex index.php. 829 00:38:29,710 --> 00:38:30,870 Huwa biss konvenzjoni. 830 00:38:30,870 --> 00:38:32,360 Jista 'jissejjaħ xejn. 831 00:38:32,360 --> 00:38:35,110 >> Hekk jekk I issa mur fis index.php, tkun taf tara 832 00:38:35,110 --> 00:38:37,100 li, indeed-- ejja jeħles mill-kummenti 833 00:38:37,100 --> 00:38:39,500 hawnhekk għaliex hemm verament xejn interessanti li it-- 834 00:38:39,500 --> 00:38:41,579 dan huwa biss diffiċli kodifikati HTML. 835 00:38:41,579 --> 00:38:43,370 Allura dak konsistenti, għalkemm, mat-talba tiegħi 836 00:38:43,370 --> 00:38:45,230 li inti tista jħalltux flimkien HTML u PHP. 837 00:38:45,230 --> 00:38:48,060 M'hemm l-ebda attwali programmazzjoni loġika fil hawn. 838 00:38:48,060 --> 00:38:51,030 >> U l-fajls l-oħra huma pjuttost ħafna biss bħala uninteresting. 839 00:38:51,030 --> 00:38:56,240 Huwa biss ġimgħa hard-kodifikati hawn għal ġimgħa waħda mu ġimgħa waħda w, 840 00:38:56,240 --> 00:38:57,510 għal It-tnejn u l-Erbgħa. 841 00:38:57,510 --> 00:39:01,890 U mbagħad jekk I jiftħu żero ġimgħa, Avviż huwa kważi identiku. 842 00:39:01,890 --> 00:39:03,320 >> U li tip ta 'takeaway ċavetta. 843 00:39:03,320 --> 00:39:06,180 Avviż kemm żejda dan huwa. 844 00:39:06,180 --> 00:39:10,710 Dawn il-fajls bilkemm bidla, u għadhom I jinġibed waħda minn dawn kopja / paste-impjiegi 845 00:39:10,710 --> 00:39:13,420 fejn I ħa file-- wieħed preżumibbilment fil-ġimgħa zero-- kkupjata 846 00:39:13,420 --> 00:39:16,320 meta ġimgħa daħal madwar, u tweaked Valuri ftit. 847 00:39:16,320 --> 00:39:18,590 Aħna probabbilment għandhom ikunu jistgħu biex jagħmlu aħjar minn dan. 848 00:39:18,590 --> 00:39:21,800 >> Mela ejja jmorru lura sa MVC u jmorru fil-verżjoni waħda. 849 00:39:21,800 --> 00:39:24,810 U avviż stajt ltqajna fajls ftit, għaliex dak 850 00:39:24,810 --> 00:39:29,870 kien komuni għal kollha ta 'dawk il-fajls biss mument ago-- jekk immur lura għall-verżjoni 0, 851 00:39:29,870 --> 00:39:32,600 ejja jmorru lura fis indiċi, u biss postulate-- 852 00:39:32,600 --> 00:39:36,090 ladarba I jeħles mill-comments-- liema parti tal din il-paġna 853 00:39:36,090 --> 00:39:40,072 huwa preżumibbilment f'kull wieħed mill-fajls tiegħi? 854 00:39:40,072 --> 00:39:40,780 Just sejħa hija out. 855 00:39:40,780 --> 00:39:44,620 Liema linji huma duplikati probabbilment madwar kollha ta 'dawn il-paġni? 856 00:39:44,620 --> 00:39:45,120 Yeah? 857 00:39:45,120 --> 00:39:46,110 >> STUDENT: [inaudible]. 858 00:39:46,110 --> 00:39:47,660 >> DAVID J. Malan: 1 sa 9. 859 00:39:47,660 --> 00:39:48,720 Yeah, assolutament. 860 00:39:48,720 --> 00:39:52,080 1 sa 9, ħlief forsi 8 bidliet ftit għaliex CS50 861 00:39:52,080 --> 00:39:54,650 isir lectures jew żero ġimgħa jew xi ħaġa. 862 00:39:54,650 --> 00:39:55,970 Iżda kważi identiċi. 863 00:39:55,970 --> 00:39:58,657 Allura dan kollu Jittieħed huwa biss tip ta 'kkupjati u pasted. 864 00:39:58,657 --> 00:40:00,490 U hemm koppja linji oħra I jistgħu jaħsbu 865 00:40:00,490 --> 00:40:05,000 ta 'dak huma probabbilment identiċi madwar il-fajls kollha. 866 00:40:05,000 --> 00:40:06,315 >> STUDENT: 12 u 13. 867 00:40:06,315 --> 00:40:07,190 DAVID J. Malan: Yeah. 868 00:40:07,190 --> 00:40:11,220 Sure, 12, 13, u 14 probabbilment, biss minħabba l-għalf interessanti 869 00:40:11,220 --> 00:40:15,460 qed jiġri fuq linji 11 u 10, għalhekk jidher. 870 00:40:15,460 --> 00:40:18,350 Mela ejja nħarsu lejn verżjoni 1, li tipprova ttejjeb fuq dan. 871 00:40:18,350 --> 00:40:24,020 Fil-verżjoni 1 ta 'dan example-- MVC aħna ser jispjegaw dak mezzi MVC fil moment-- 872 00:40:24,020 --> 00:40:27,420 jekk immur fis indiċi, it-tip ta ' jistenna ftit konfuża issa. 873 00:40:27,420 --> 00:40:28,880 Huwa mhux daqshekk sempliċi bħal qabel. 874 00:40:28,880 --> 00:40:30,906 >> Iżda li ladarba inti tibda taqrah b'attenzjoni, huwa 875 00:40:30,906 --> 00:40:32,530 pjuttost sempliċi dak li qed jagħmel. 876 00:40:32,530 --> 00:40:34,397 Apparentement linja 1 u linja 8 ħadu post 877 00:40:34,397 --> 00:40:37,230 kollha ta 'l-għalf inti biss identified-- għalkemm biss għal miżura tajba, 878 00:40:37,230 --> 00:40:41,900 I ħallew il-ULS hemm biss fil-każ xi ijiem, ma jkollhom lista ta 'affarijiet. 879 00:40:41,900 --> 00:40:47,860 U hekk bżonn huwa tip simili lira jinkludu fil C. kopji u pejsts 880 00:40:47,860 --> 00:40:50,470 il-kontenut effettiv dritt hawn fil dan il-fajl. 881 00:40:50,470 --> 00:40:53,650 >> Allura fil-header.php, kif inti jista jiddeduċu mill-isem tagħha, 882 00:40:53,650 --> 00:40:55,330 se tkun l-header tal-paġna. 883 00:40:55,330 --> 00:40:57,110 Huwa tip ta 'orfni hawn. 884 00:40:57,110 --> 00:41:01,820 Hija biss għandha l-quċċata lilha, iżda hemm l-ebda kontenut aktar hawn taħt. 885 00:41:01,820 --> 00:41:05,070 >> U jekk I tħares lejn footer sadanittant, li kienet il-fajl oħra mentioned-- 886 00:41:05,070 --> 00:41:08,830 dan wieħed anki inqas interessanti, iżda għal darb'oħra, huwa komuni li kollox. 887 00:41:08,830 --> 00:41:10,250 Allura dan huwa l-footer. 888 00:41:10,250 --> 00:41:11,300 Dan huwa l-header. 889 00:41:11,300 --> 00:41:13,950 Dan huwa l-fajl li l- jinbidlu, hekk għaliex ma 890 00:41:13,950 --> 00:41:18,140 jippruvaw fattur l-komunalità B'dawn iż-żewġ linji hawn? 891 00:41:18,140 --> 00:41:20,090 >> Iżda nistgħu tnaddaf dan up ftit aktar. 892 00:41:20,090 --> 00:41:23,260 Jien ser jimxi 'l quddiem u jiftħu verżjoni tnejn fejn 893 00:41:23,260 --> 00:41:27,106 aħna ser tara li hemm fajl ġdid, helpers.php. 894 00:41:27,106 --> 00:41:28,610 Aħna ser tara dak li huwa fil-mument. 895 00:41:28,610 --> 00:41:30,930 Ejja mur indiċi, bħala l- punt ta 'dħul bħal qabel. 896 00:41:30,930 --> 00:41:35,230 >> U issa avviż jien jeħtieġu helpers.php, mhux header jew footer. 897 00:41:35,230 --> 00:41:41,720 Iżda helpers huwa tip simili helpers.c u helpers.h minn PSET 2 898 00:41:41,720 --> 00:41:46,150 jew PSET 3 twil ilu meta inti attwalment ma tfittex u ssib għal dak PSET, 899 00:41:46,150 --> 00:41:50,950 u kellek kollha ta 'kodiċi tiegħek għall-issortjar u tiftix fil-fajl separat. 900 00:41:50,950 --> 00:41:52,510 Dan huwa dak li qed jiġri hawn. 901 00:41:52,510 --> 00:41:54,390 >> U issa linja 3 jistenna ftit differenti. 902 00:41:54,390 --> 00:41:55,920 U huwa biss linja waħda. 903 00:41:55,920 --> 00:41:57,950 Biex tagħmel dan saħansitra aktar ċara, I jistgħu biss 904 00:41:57,950 --> 00:42:01,820 do dan ikun stylistically konsistenti ma 'kollox aħna ghamilt. 905 00:42:01,820 --> 00:42:04,130 Iżda li mhux verament jinbidlu l-funzjonalità. 906 00:42:04,130 --> 00:42:05,880 Huwa wieħed biss linja tal-kodiċi reali. 907 00:42:05,880 --> 00:42:09,010 >> Apparentement, hemm funzjoni x'imkien imsejħa tirrendi header, 908 00:42:09,010 --> 00:42:11,420 u dan huwa fejn l-affarijiet jiksbu pretty qawwija. 909 00:42:11,420 --> 00:42:17,040 Avviż li ġewwa tal parentesi tagħha huwa dak biċċa oħra ta 'sintassi? 910 00:42:17,040 --> 00:42:19,780 911 00:42:19,780 --> 00:42:23,350 Huwa probabbilment ftit diffiċli li wieħed jgħid, iżda Avviż there's-- I ser tpoġġi xi abjad 912 00:42:23,350 --> 00:42:24,300 ispazju. 913 00:42:24,300 --> 00:42:25,530 Hemm parentesi kwadri. 914 00:42:25,530 --> 00:42:29,700 >> U parentesi kwadri rajna daqsxejn ilu fil-kuntest ta 'arrays assoċjattiva, 915 00:42:29,700 --> 00:42:31,580 li huma, għal darb'oħra, bħal tabelli hash. 916 00:42:31,580 --> 00:42:36,230 U jekk taħseb issa sa C, il- ordni ta 'argumenti in funzjoni 917 00:42:36,230 --> 00:42:37,570 għandu dejjem ikun l-istess. 918 00:42:37,570 --> 00:42:41,146 Int għandek tiftakar dak li l- tordna x is--, y, z jew z, y, x-- 919 00:42:41,146 --> 00:42:44,020 u inti għandek dejjem jipprovduhom fl-istess ordni jew tfittex lilhom 920 00:42:44,020 --> 00:42:45,100 jekk inti ħadthom minsija. 921 00:42:45,100 --> 00:42:51,140 >> Iżda dan jidher li jkun mod għaqlija tgħaddi valur ewlieni arbitrarja 922 00:42:51,140 --> 00:42:55,840 pari biha titolu huwa l-isem ta 'argument f'dan il-każ 923 00:42:55,840 --> 00:42:58,334 u CS50 huwa l-valur tagħha. 924 00:42:58,334 --> 00:43:00,250 U l-fatt li għandi dawn parentesi kwadri 925 00:43:00,250 --> 00:43:02,560 hawn ifisser li stajt wkoll tgħaddi fil xi ħaġa 926 00:43:02,560 --> 00:43:07,550 bħal fil-ġimgħa huwa 1 jew 0 jew 2 jew 3. 927 00:43:07,550 --> 00:43:10,550 Allura aħna ħadthom parameterized din il-funzjoni b'mod 928 00:43:10,550 --> 00:43:15,180 li hija tista 'tieħu inputs multipli, iżda għal issa huwa biss il-wieħed. 929 00:43:15,180 --> 00:43:20,060 >> Jekk I issa jmorru fis helpers.php, Avviż dak li qed jagħmel. 930 00:43:20,060 --> 00:43:22,030 Dan huwa ftit ta 'funzjonalitajiet ġodda, 931 00:43:22,030 --> 00:43:24,190 iżda għal issa ħu fuq il-fidi li dan huwa 932 00:43:24,190 --> 00:43:26,570 il-sintassi li magħhom inti jiddefinixxu funzjoni fil-PHP. 933 00:43:26,570 --> 00:43:27,840 Inti litteralment say funzjoni. 934 00:43:27,840 --> 00:43:30,090 Inti ma jispeċifikawx ritorn tip, u li konsistenti 935 00:43:30,090 --> 00:43:33,880 bid-dettal varjabbli qabel fejn inti ma verament tip bil-qawwa. 936 00:43:33,880 --> 00:43:35,650 >> Dan biss jispeċifika li, awtomatikament, din 937 00:43:35,650 --> 00:43:37,460 jieħu assoċjattiv firxa bħala argument. 938 00:43:37,460 --> 00:43:38,210 U inti taf liema? 939 00:43:38,210 --> 00:43:41,450 Jekk l-utent ma jgħaddix wieħed fi, tassumi valur default. 940 00:43:41,450 --> 00:43:44,680 >> Din hija karatteristika li C ma jkollux għalina, li huwa sabiħ, għaliex issa 941 00:43:44,680 --> 00:43:46,430 data, anki jekk inti ma tagħtiha xejn, 942 00:43:46,430 --> 00:43:49,300 se tkun array iżda waħda vojta. 943 00:43:49,300 --> 00:43:51,860 U bħala twarrib, estratt biss ma xi ħaġa funky 944 00:43:51,860 --> 00:43:56,380 fejn tieħu kollha tal-keys minn din firxa assoċjattiva, l-affarijiet 945 00:43:56,380 --> 00:43:59,950 inti tista 'tpoġġi fil-parentesi kwadri, u toħloq varjabbli barra minnhom 946 00:43:59,950 --> 00:44:06,270 sabiex inkunu nistgħu finalment ikollhom aċċess lilhom fil footet.php u header.php. 947 00:44:06,270 --> 00:44:08,950 Li l-astratt ftit, so let me punt dan out. 948 00:44:08,950 --> 00:44:12,990 >> Fil index.php, avviż li jien tgħaddi fil-par valur ewlieni ta 'titolu 949 00:44:12,990 --> 00:44:14,850 b'valur ta 'CS50. 950 00:44:14,850 --> 00:44:18,660 Jekk I issa nħarsu lejn helpers.php, avviż li RenderHeader 951 00:44:18,660 --> 00:44:23,870 huwa estrazzjoni li d-data li jien tgħaddi fil, u mbagħad jeħtieġu header.php. 952 00:44:23,870 --> 00:44:27,970 What I ghamilt huwa tip ta 'raġel foqra implimentazzjoni issa dawn li ġejjin. 953 00:44:27,970 --> 00:44:31,720 >> Jekk I jiftħu header.php, avviż li stajt m'għadhomx iebsa 954 00:44:31,720 --> 00:44:34,890 kodifikati l CS50 kelma f'dan il-fajl header. 955 00:44:34,890 --> 00:44:39,310 Stajt tpoġġi dan ċertament atrociously funzjoni jismu, Chars speċjali HTML, 956 00:44:39,310 --> 00:44:40,170 fil hemmhekk. 957 00:44:40,170 --> 00:44:41,640 Imma Avviż dak I ghamilt. 958 00:44:41,640 --> 00:44:44,240 Stajt ltqajna miftuħa HTML. 959 00:44:44,240 --> 00:44:47,420 I mbagħad ikollhom ras miftuħa u titolu miftuħ. 960 00:44:47,420 --> 00:44:52,380 >> U allura l ġewwa tat-titolu tal miftuħa u tags qrib, għandi daqsxejn ta 'kodiċi PHP. 961 00:44:52,380 --> 00:44:56,670 U dan huwa sbieħ imma ta 'sintassi, li ifisser biss eku out. 962 00:44:56,670 --> 00:44:59,840 Huwa letteralment ifisser this-- eku il following-- 963 00:44:59,840 --> 00:45:01,910 iżda dan huwa sexier li tikteb. 964 00:45:01,910 --> 00:45:05,000 Eku out-titolu li kien għadda fl. 965 00:45:05,000 --> 00:45:07,560 >> Imma x'taħseb HTML char speċjali hija kollha dwar, 966 00:45:07,560 --> 00:45:10,590 speċjalment jekk ikollok xi esperjenza HTML qabel? 967 00:45:10,590 --> 00:45:14,050 Liema karattri jista 'jkun perikolużi li jgħaddu fl għal paġna 968 00:45:14,050 --> 00:45:17,980 fejn int dinamikament jiġġeneraw il-paġna web bl-kodiċi bħal dan? 969 00:45:17,980 --> 00:45:21,370 970 00:45:21,370 --> 00:45:24,650 Let me go għal dan il-fajl, il-verżjoni tnejn, u ara jekk ma nistax jinduċi dan. 971 00:45:24,650 --> 00:45:26,210 >> Verżjoni tnejn huwa dan. 972 00:45:26,210 --> 00:45:28,510 U avviż kollox huwa multa, taħdem tajjeb. 973 00:45:28,510 --> 00:45:35,280 Imma suppose I jmorru fil index.php u I speċifikat li t-titolu tal-paġna tiegħi 974 00:45:35,280 --> 00:45:36,630 mhuwiex CS50. 975 00:45:36,630 --> 00:45:44,930 Huwa bracket miftuħ allert iskrittura Hello dinja, kwotazzjoni wieħed qrib, 976 00:45:44,930 --> 00:45:49,740 parentesi qrib, punto virgola, parentesi miftuħa, iskrittura slash. 977 00:45:49,740 --> 00:45:51,897 >> Script, kif aħna ser eventwalment tara, huwa tag 978 00:45:51,897 --> 00:45:54,480 li tista 'tuża għall-użu ieħor lingwa ta 'programmar imsejjaħ 979 00:45:54,480 --> 00:45:56,330 JavaScript ġewwa ta 'paġna web. 980 00:45:56,330 --> 00:45:57,960 U issa avviż-loġika hawnhekk. 981 00:45:57,960 --> 00:45:59,840 Hawnhekk huwa ċentrali msejħa titolu. 982 00:45:59,840 --> 00:46:02,690 Hawnhekk huwa huwa valur fit crazy issa. 983 00:46:02,690 --> 00:46:07,840 >> Imma jekk immur għall-helpers page- jew pjuttost, il-paġna header, 984 00:46:07,840 --> 00:46:11,310 Jien ssejjaħ din il-funzjoni fuq dak it-titolu ewwel. 985 00:46:11,310 --> 00:46:15,250 Mela jekk jien issa Reload this Page, I tara dan, li jidher redikoli, 986 00:46:15,250 --> 00:46:16,110 iżda huwa sikur. 987 00:46:16,110 --> 00:46:17,310 Hija biss jistenna stupid. 988 00:46:17,310 --> 00:46:20,320 >> Iżda jissoponi minflok I kienet minsija dan. 989 00:46:20,320 --> 00:46:24,660 U Mark kliem tiegħi, numru nonzero inti ser tinsa tagħmel dan 990 00:46:24,660 --> 00:46:27,790 u int ser tingħata xi industrious student jew ħabib ġejjin up 991 00:46:27,790 --> 00:46:31,540 lilek fil-CS50 fiera jew anonimu bil-lejl poking madwar fuq il-websajt tiegħek 992 00:46:31,540 --> 00:46:35,300 u essenzjalment tinjetta kodiċi unbeknownst inti fis-sit tiegħek 993 00:46:35,300 --> 00:46:35,800 b'xi. 994 00:46:35,800 --> 00:46:39,000 >> Għaliex jekk I sempliċiment bżiq out titolu hawn u titolu 995 00:46:39,000 --> 00:46:44,330 there-- ukoll, jekk it-titolu litteralment tidher bħal dan u PHP 996 00:46:44,330 --> 00:46:47,660 bħala lingwa li tista bżiq out test lingwi oħra, 997 00:46:47,660 --> 00:46:50,650 dan huwa litteralment għaddej biex jissostitwixxu din tag bil, 998 00:46:50,650 --> 00:46:53,010 naturalment, dak li nressaq xi mkien ieħor. 999 00:46:53,010 --> 00:46:57,640 >> Hekk jekk I issa mur hawn u rikarigu wara jintilfu dawn il-mekkaniżmi ta 'sikurezza, 1000 00:46:57,640 --> 00:46:59,982 issa għandi bonjour dinja hawn. 1001 00:46:59,982 --> 00:47:02,690 Issa dak li mhux kollha li kbir ta ' jittrattaw, imma int tista 'tagħmel xi ħaġa 1002 00:47:02,690 --> 00:47:05,119 ftit aktar malizzjużi hawn, simili hemm 1003 00:47:05,119 --> 00:47:08,410 tags-- ieħor kif aħna ser tara ladarba nonfqu aktar ħin fil JavaScript-- bħal post 1004 00:47:08,410 --> 00:47:14,910 dot href gets, kwotazzjoni, unquote, HTTP business.com, iżda l-oppost ta 'dak 1005 00:47:14,910 --> 00:47:15,950 mill-oħra jum. 1006 00:47:15,950 --> 00:47:20,120 U issa inti tista 'tikkaġuna web paġna li fil-fatt imorru immedjatament 1007 00:47:20,120 --> 00:47:21,190 għal din il-paġna web hawnhekk. 1008 00:47:21,190 --> 00:47:23,000 >> U fil-fatt, ma rridx li anki jmorru għall business.com 1009 00:47:23,000 --> 00:47:24,749 minħabba I ma jridux li tkun taf dak li hu. 1010 00:47:24,749 --> 00:47:28,710 Iżda dan, wisq, se jikkawżaw kodiċi li jiġi injettat fil din il-paġna. 1011 00:47:28,710 --> 00:47:32,680 Allura dan huwa biss li jgħidu li anki jekk aħna qed tintroduċi kmieni super fuq xi 1012 00:47:32,680 --> 00:47:36,800 ta 'dawn l-istrutturi aktar kumplessi, dan kollu lejn tmiem ta 'l-iżgurar 1013 00:47:36,800 --> 00:47:39,320 dan il-kodiċi tiegħek mhix sfruttabbli. 1014 00:47:39,320 --> 00:47:40,960 >> Allura issa tielet verżjoni hawn. 1015 00:47:40,960 --> 00:47:42,470 Huwa jkollna fancier ftit. 1016 00:47:42,470 --> 00:47:44,875 I ma verament like-- in-naħa anali 'lili 1017 00:47:44,875 --> 00:47:47,750 kien jkollna ftit imdejqa mill- fatt li kelli funzjoni msejħa 1018 00:47:47,750 --> 00:47:51,940 RenderHeader u RenderFooter li kienu kważi identiċi. 1019 00:47:51,940 --> 00:47:55,400 Hekk ġara lili, għaliex ma I parameterize dawn il-funzjonijiet 1020 00:47:55,400 --> 00:47:59,180 fis biss wieħed imsejjaħ jirrendu, jitlob li jiġi tieħu t-tieni argument 1021 00:47:59,180 --> 00:48:04,420 bħall-isem tal-mudell, il-finali li render-- jew header jew footer? 1022 00:48:04,420 --> 00:48:07,160 U mbagħad b'għażla, jekk irrid li jgħaddu f'xi pari valur ewlenin 1023 00:48:07,160 --> 00:48:10,580 bħal I do għat-titlu għall- header iżda mhux għall-footer, 1024 00:48:10,580 --> 00:48:11,800 I jistgħu jagħmlu dan. 1025 00:48:11,800 --> 00:48:16,510 >> U hekk issa jekk I tmur fis helpers.php, huwa ftit aktar kumplessa. 1026 00:48:16,510 --> 00:48:19,670 U jien ser mewġa idejn tiegħi fil- dettalji, imma huwa biss funzjoni waħda. 1027 00:48:19,670 --> 00:48:21,890 Allura dak pass lejn tfassil aħjar. 1028 00:48:21,890 --> 00:48:23,360 >> Nistgħu nieħdu dan il-pass wieħed ulterjuri. 1029 00:48:23,360 --> 00:48:28,890 Jekk immur fis raba tiegħi verżjoni ta 'dan, l-avviż issa 1030 00:48:28,890 --> 00:48:31,320 li jien tagħmel xi ħaġa saħansitra aktar tip ta 'cryptic. 1031 00:48:31,320 --> 00:48:33,230 U naf li dan huwa ħafna biex jassorbu f'daqqa, 1032 00:48:33,230 --> 00:48:35,080 imma aħna qed biss tip ta 'tindif affarijiet up. 1033 00:48:35,080 --> 00:48:38,550 Issa jien tqegħid helpers tiegħi fajl ġo folder imsejjaħ 1034 00:48:38,550 --> 00:48:41,190 includes-- biss arbitrarju isem fejn I tixtieq li tqiegħed Jittieħed 1035 00:48:41,190 --> 00:48:44,300 li nixtieq li include-- u mbagħad il-bqija ta 'dan huwa l-istess. 1036 00:48:44,300 --> 00:48:47,140 >> Imma jekk jien tfittex issa gedit, avviż li stajt gotten rid 1037 00:48:47,140 --> 00:48:51,940 kollha ta 'dawn il-fajls oħra u stajt mċaqalqa minnhom, per eżempju, fis hawn. 1038 00:48:51,940 --> 00:48:55,110 U mbagħad fl templates, I jkollhom din hawnhekk, wisq. 1039 00:48:55,110 --> 00:48:59,292 U għalhekk din hija kollha issa lejn pass ta 'użu ta' mudell disinn ferm aħjar. 1040 00:48:59,292 --> 00:49:01,000 U aħna qed malajr ħafna se jitbiegħed 1041 00:49:01,000 --> 00:49:03,870 minn funzjonalità default PHP, li bdejna hawn ma, 1042 00:49:03,870 --> 00:49:07,655 fejn inti biss jħalltux flimkien PHP, u HTML tiegħek, u CSS tiegħek, 1043 00:49:07,655 --> 00:49:09,780 u inti biss bżiq out u inti tmur dwar mod tiegħek. 1044 00:49:09,780 --> 00:49:11,404 Huwa mhux se tkun maintainable ħafna. 1045 00:49:11,404 --> 00:49:14,481 Eżatt bħal fil-C, bdejna nużaw fajls multipli u funzjonijiet multipli 1046 00:49:14,481 --> 00:49:15,730 u factoring affarijiet li l-. 1047 00:49:15,730 --> 00:49:16,688 Aħna ser tagħmel l-istess hawn. 1048 00:49:16,688 --> 00:49:19,970 U fil-fatt, fil-ħames u finali verżjoni hawn, I ma ħaġa waħda oħra. 1049 00:49:19,970 --> 00:49:23,710 Tista 'anki tuża dot dot, li, għal darb'oħra, huwa biss l-direttorju ġenitur. 1050 00:49:23,710 --> 00:49:28,260 Biex tkun saħansitra aktar konxji tas-sigurtà, għaliex jekk I tħares lejn l-smigħ 1051 00:49:28,260 --> 00:49:32,450 hawn għal ħames u l-verżjoni finali, avviż li għandi direttorju wieħed hawn jissejjaħ 1052 00:49:32,450 --> 00:49:35,180 pubbliku, u mbagħad fuq il- istess livell, biex ngħidu hekk, 1053 00:49:35,180 --> 00:49:38,490 Stajt ltqajna jinkludi u templates u mbagħad dan il-fajl test README. 1054 00:49:38,490 --> 00:49:41,130 >> U r-raġuni stajt strutturat huwa simili this-- u web tant 1055 00:49:41,130 --> 00:49:44,330 hosts, speċjalment dawk $ 5 dawk xahar jew dawk $ 10 fix-xahar, 1056 00:49:44,330 --> 00:49:47,170 jekk inti stajt qatt kellu wieħed minn dawn services-- dak hekk ħafna minnhom jagħmlu 1057 00:49:47,170 --> 00:49:50,690 huwa huma biss jistennew li inti dump kollha ta 'fajls tiegħek fis direttorju wieħed, 1058 00:49:50,690 --> 00:49:53,640 bħal għamilna diġà ma dan ħafna ewwel eżempju. 1059 00:49:53,640 --> 00:49:56,740 >> Iżda hekk kif inti tibda bini aktar siti sofistikati li biss jaħżnu 1060 00:49:56,740 --> 00:50:00,480 data li jimpurtahom u fajls inti jimpurtak, attwalment organizzazzjoni affarijiet 1061 00:50:00,480 --> 00:50:05,060 korrett u ma 'aktar sigurtà sensi f'moħħu jista 1062 00:50:05,060 --> 00:50:07,927 nibdew biex jiddefendu dawl tal-ħbieb 1063 00:50:07,927 --> 00:50:10,135 li inti għandek jew fi jew barra ta 'din il-klassi li, 1064 00:50:10,135 --> 00:50:12,510 hekk kif tibda tagħmel programmi ruħek fuq il-web, 1065 00:50:12,510 --> 00:50:15,140 ser tibda picking fuqek u fuqhom. 1066 00:50:15,140 --> 00:50:17,420 >> U hekk aħna ser tħares finalment fuq dan id-disinn. 1067 00:50:17,420 --> 00:50:20,010 Dan huwa biss stampa li turi dan li ġej. 1068 00:50:20,010 --> 00:50:22,897 Aħna qed tmur biex jitqiegħdu kollha ta 'tagħna programmazzjoni loġika fil-fajls wieħed jew aktar, 1069 00:50:22,897 --> 00:50:25,230 u aħna qed tmur biex tibda biss sejħa dawk kontrolluri. 1070 00:50:25,230 --> 00:50:28,022 Huwa fejn l-imħuħ ta ' websajts tagħna attwalment huma. 1071 00:50:28,022 --> 00:50:29,730 Allura aħna qed tmur biex għandhom fehmiet, u l-fehmiet 1072 00:50:29,730 --> 00:50:32,480 huma sempliċi kemm biss separat files-- imsejħa templates, spiss. 1073 00:50:32,480 --> 00:50:34,410 Huma biss għandhom il- estetika tal-paġna tiegħi, 1074 00:50:34,410 --> 00:50:37,020 dak li nixtieq il-paġna tfittex like---kuluri u l-format 1075 00:50:37,020 --> 00:50:38,870 u l-pożizzjonijiet ta ' il-varjabbli kollha. 1076 00:50:38,870 --> 00:50:41,120 >> U imbagħad aktar interessanti li aħna ser eventwalment tikseb sa 1077 00:50:41,120 --> 00:50:45,420 huwa l-mudell, li se jkun biss il-kelma aħna SLAP fuq teknoloġiji oħrajn 1078 00:50:45,420 --> 00:50:47,771 li nġibu fil- stampa, bħal databases attwali, 1079 00:50:47,771 --> 00:50:49,520 hekk li meta inti tixtieq biex jiffrankaw l-informazzjoni, 1080 00:50:49,520 --> 00:50:52,140 inti mhux biss ibgħat email biex Procter tiegħek jew lilek innifsek, 1081 00:50:52,140 --> 00:50:57,350 inti fil-fatt jaħżen fil database jużaw lingwa oħra magħrufa bħala SQL. 1082 00:50:57,350 --> 00:51:00,450 U hekk aħna ser leave hawn illum u pick up ma 'dan l-Erbgħa 1083 00:51:00,450 --> 00:51:02,990 u jintroduċu databases mbagħad. 1084 00:51:02,990 --> 00:51:06,940 >> [Daqq ta mużika] 1085 00:51:06,940 --> 00:54:24,555