1 00:00:00,000 --> 00:00:04,410 >> [Predvaja glasba] 2 00:00:04,410 --> 00:00:12,250 3 00:00:12,250 --> 00:00:15,770 >> SPEAKER 1: To je CS50 in to je konec sedem teden. 4 00:00:15,770 --> 00:00:20,240 Danes je morda kje smo Res vam poučevanje jezikov. 5 00:00:20,240 --> 00:00:24,100 Uvedli smo v zadnjih nekaj tednov HTML in CSS, od katerih nobena 6 00:00:24,100 --> 00:00:25,240 se programskih jezikov. 7 00:00:25,240 --> 00:00:28,600 In res, čeprav nismo pogled na skoraj vseh oznak 8 00:00:28,600 --> 00:00:33,410 da HTML prihaja z in skoraj vse lastnosti, ki CSS prihaja z, 9 00:00:33,410 --> 00:00:35,007 to je nekako to za HTML in CSS. 10 00:00:35,007 --> 00:00:36,840 Bomo samo splošno začetek ob predpostavki, da vas 11 00:00:36,840 --> 00:00:39,545 razumeti splošne ideje oznak in atributov, 12 00:00:39,545 --> 00:00:41,850 in strani, ki se pošiljajo od odjemalca do strežnika. 13 00:00:41,850 --> 00:00:45,280 >> Ker danes začnemo gledati drug programski jezik, PHP. 14 00:00:45,280 --> 00:00:47,110 Bomo storili to super hitro. 15 00:00:47,110 --> 00:00:50,910 Ne bomo naučil PHP per se, podobno kot nismo prizadevamo, da te nauči 16 00:00:50,910 --> 00:00:52,670 C, samo po sebi, temveč programiranje. 17 00:00:52,670 --> 00:00:55,088 In res, eden izmed cilji tega predmeta 18 00:00:55,088 --> 00:00:57,820 se ne da naučiti C, ali HTML ali CSS, ali PHP, 19 00:00:57,820 --> 00:01:00,370 ali poljubno število drugih buzz besede ali kratice, 20 00:01:00,370 --> 00:01:03,097 temveč je računalništva in kako temeljito programiranje. 21 00:01:03,097 --> 00:01:05,930 In res, danes smo začeli, da sprejmejo ti kolesa usposabljanja off vse 22 00:01:05,930 --> 00:01:10,600 nadalje jih plujejo skozi jezik imenuje PHP, kot sledi. 23 00:01:10,600 --> 00:01:13,640 >> Tukaj je tisto, kar ta jezik izgleda. 24 00:01:13,640 --> 00:01:17,790 Izkazalo se je, da ni potrebe za glavna funkcija v programu napisano 25 00:01:17,790 --> 00:01:19,470 v jeziku, ki se imenuje PHP. 26 00:01:19,470 --> 00:01:22,585 Tako, da že sliši malo enostavnejše od C, s katerimi smo seznanjeni. 27 00:01:22,585 --> 00:01:25,370 Izkazalo se je, da če vas želeli opredeliti spremenljivke, 28 00:01:25,370 --> 00:01:29,470 vam je skoraj enako C. Toda tam je očitno ena razlika tukaj 29 00:01:29,470 --> 00:01:31,850 ko Izjavljam niz, ali morda dve razliki. 30 00:01:31,850 --> 00:01:32,725 Kaj videti drugačen? 31 00:01:32,725 --> 00:01:35,810 32 00:01:35,810 --> 00:01:37,160 >> OBČINSTVO: Dolar znak. 33 00:01:37,160 --> 00:01:39,951 >> SPEAKER 1: Da, tam je dolar podpis, ki smo ga še nikoli videl. 34 00:01:39,951 --> 00:01:41,451 In kaj manjka? 35 00:01:41,451 --> 00:01:41,950 Ja? 36 00:01:41,950 --> 00:01:42,820 >> OBČINSTVO: [neslišno] 37 00:01:42,820 --> 00:01:44,403 >> SPEAKER 1: Ja, ni podatkovni tip. 38 00:01:44,403 --> 00:01:48,410 Tako se izkaže, da je PHP, kaj smo pokličite ohlapno natipkan jezik, v katerem 39 00:01:48,410 --> 00:01:49,959 C je močno tipkal. 40 00:01:49,959 --> 00:01:52,500 Ohlapno natipkan samo pomeni, da obstajajo različne vrste podatkov, 41 00:01:52,500 --> 00:01:54,470 obstajajo nizi in Ints in plava. 42 00:01:54,470 --> 00:01:56,330 Ampak številke računalnika, ki ven. 43 00:01:56,330 --> 00:01:58,664 Si človeško programer ne bi bilo treba to pogruntal. 44 00:01:58,664 --> 00:02:00,580 Torej, vse kar morate storiti, da razglasi spremenljivka je 45 00:02:00,580 --> 00:02:03,220 znak za dolar, je ime vašega spremenljivka, in nato, na primer, 46 00:02:03,220 --> 00:02:04,760 quote citata, zdravo svet. 47 00:02:04,760 --> 00:02:07,662 >> No to je tisto, kar pogoj izgleda v PHP. 48 00:02:07,662 --> 00:02:08,328 Kakršne koli razlike? 49 00:02:08,328 --> 00:02:10,650 50 00:02:10,650 --> 00:02:11,150 No. 51 00:02:11,150 --> 00:02:12,540 Tako se izkaže, ti so enaki. 52 00:02:12,540 --> 00:02:14,665 In morda imajo manj podružnic ali več podružnic, 53 00:02:14,665 --> 00:02:16,557 ampak skladenjski zavoji ven popolnoma enaka. 54 00:02:16,557 --> 00:02:18,390 Logični izrazi lahko naloži skupaj. 55 00:02:18,390 --> 00:02:20,400 Logični izrazi lahko anded skupaj. 56 00:02:20,400 --> 00:02:21,430 Imate še stikal. 57 00:02:21,430 --> 00:02:23,790 Tudi če se ne uporablja ti, ti ne obstajajo v C 58 00:02:23,790 --> 00:02:26,020 in oni so funkcionalno ekvivalent v PHP. 59 00:02:26,020 --> 00:02:28,260 >> In v resnici, v PHP oni malo močnejši. 60 00:02:28,260 --> 00:02:32,540 V C, lahko primerjajo samo nekatere vrste podatkov, kot so ints in znakov, 61 00:02:32,540 --> 00:02:36,320 ker so v PHP lahko dejansko primerjati polni Odhraniti pijače godala, ne da 62 00:02:36,320 --> 00:02:38,460 skrbeti kazalci in podobno. 63 00:02:38,460 --> 00:02:39,430 Torej, tukaj je za zanko. 64 00:02:39,430 --> 00:02:41,270 To je samo psevdokoda koda, če hočete. 65 00:02:41,270 --> 00:02:43,400 Vendar strukturno je identičen C. 66 00:02:43,400 --> 00:02:47,520 >> Tukaj je nekaj časa zanke, psevdokoda therefore-- identičen C. 67 00:02:47,520 --> 00:02:49,390 Tukaj je storila, medtem ko loop-- enaki. 68 00:02:49,390 --> 00:02:51,390 In tako se je nekako ta vzorec tu, pri čemer 69 00:02:51,390 --> 00:02:54,400 tam je nekaj drugega skladenjska lastnosti smo dejansko videli. 70 00:02:54,400 --> 00:02:57,340 Dejstvo je, tu je lepo Tako v PHP, s katerim, 71 00:02:57,340 --> 00:02:59,350 Če želite Ponovil čez array, in si 72 00:02:59,350 --> 00:03:02,309 Ne želim, da skoči skozi duševne in skladenjske obroče, ki imajo 73 00:03:02,309 --> 00:03:05,178 int i enak 0, i manj kot n, i plus plus-- ki 74 00:03:05,178 --> 00:03:07,040 je samo veliko siten sintakse. 75 00:03:07,040 --> 00:03:10,654 Lahko rečem malo bolj fluidno za vsako številk 76 00:03:10,654 --> 00:03:13,320 kot število, kjer je v tem primeru dolar številke znak, da sem ob predpostavki, 77 00:03:13,320 --> 00:03:15,400 je kot matrika se imenuje številk. 78 00:03:15,400 --> 00:03:18,810 In potem sem ob predpostavki, število, ednini, se bo spremenljivka. 79 00:03:18,810 --> 00:03:22,940 >> In kaj PHP bo naredil za mene, kot sem Ponovil nad to zanko je na vsaki ponovitvi 80 00:03:22,940 --> 00:03:28,450 to se dogaja posodobiti spremenljivo številko bo i-ti element v številkah, plural. 81 00:03:28,450 --> 00:03:30,060 Torej je le ročaji vse to za mene. 82 00:03:30,060 --> 00:03:32,750 Ni oglati oklepaji, ne znak za dolar, ni podpičji. 83 00:03:32,750 --> 00:03:34,117 To je samo malo enostavnejše. 84 00:03:34,117 --> 00:03:35,950 No, če želite, da se matrika, se izkaže, da si 85 00:03:35,950 --> 00:03:38,908 Lahko narediš nekaj zelo podobnega C. Sintaksa je malo drugačna. 86 00:03:38,908 --> 00:03:41,000 Ampak tukaj je matrika se imenuje Dolar je bil podpisan številke. 87 00:03:41,000 --> 00:03:44,261 In uporabljam, v PHP, kvadratni nosilci, se je izkazalo. 88 00:03:44,261 --> 00:03:47,260 In bomo spet videli to še v JavaScript-- drug jezik. 89 00:03:47,260 --> 00:03:49,968 Pravkar sem se uporabljajo oglati oklepaj zapis da imajo vejicami ločen seznam 90 00:03:49,968 --> 00:03:51,530 celih, v tem primeru. 91 00:03:51,530 --> 00:03:53,010 Ampak to mi daje niz. 92 00:03:53,010 --> 00:03:56,270 >> Ampak še močnejši v PHP, imamo tudi tisto, kar so na splošno 93 00:03:56,270 --> 00:03:57,640 imenuje asociativne nize. 94 00:03:57,640 --> 00:03:59,540 In veliko jezikov imajo ti tudi. 95 00:03:59,540 --> 00:04:03,810 Stvar nizi C je, da se indeksi 96 00:04:03,810 --> 00:04:06,940 za niz, stvar, ki vas uporabite v oglatih oklepajih, preko katerega 97 00:04:06,940 --> 00:04:08,600 imate dostop do elementov, mora biti kaj? 98 00:04:08,600 --> 00:04:10,620 >> OBČINSTVO: [neslišno] 99 00:04:10,620 --> 00:04:14,220 >> SPEAKER 1: Morajo biti številke ali cela, posebej iz nič gor. 100 00:04:14,220 --> 00:04:17,140 No, v PHP, in se je izkazalo ven, v drugih jezikih, 101 00:04:17,140 --> 00:04:20,820 lahko začnete, da imajo indeksi, ki niso številski. 102 00:04:20,820 --> 00:04:23,880 Ampak oni so pravzaprav besede ali stavki, tako da namesto 103 00:04:23,880 --> 00:04:27,070 poskusite, da se spomnimo, kjer nekaj je, ali shranjen v spremenljivko i, 104 00:04:27,070 --> 00:04:31,720 lahko uporabljaš besedo in rekel: that-- lahko rečeš besedo, kot je ta. 105 00:04:31,720 --> 00:04:34,730 >> Torej znak za dolar quote je ime spremenljivke tukaj. 106 00:04:34,730 --> 00:04:39,360 To je nekoliko funky sintaksa da je združevanje dveh ključnih vrednosti 107 00:04:39,360 --> 00:04:41,250 parov za to spremenljivko. 108 00:04:41,250 --> 00:04:45,490 Natančneje, to mi daje matrika, ki je dolžine 2. 109 00:04:45,490 --> 00:04:47,660 Toda indeksi niso 0 in 1. 110 00:04:47,660 --> 00:04:51,250 Indeksi so quote citata simbol in quote citata cena. 111 00:04:51,250 --> 00:04:55,990 In vrednosti teh indeksov, oziroma, je FB za Facebook 112 00:04:55,990 --> 00:05:00,360 in 79,53 $, ko sem nazadnje preveri ceno za to. 113 00:05:00,360 --> 00:05:01,210 >> Kaj to pomeni? 114 00:05:01,210 --> 00:05:04,136 No, to pomeni, da namesto pisanje kode 115 00:05:04,136 --> 00:05:09,612 kot je ta, kjer sem počel nekaj kot dolar sign-- ali bolje, v C 116 00:05:09,612 --> 00:05:11,070 Jaz ne bi imel niti znak za dolar. 117 00:05:11,070 --> 00:05:13,490 Jaz bi naredil nekaj kot narekovajev in nato 118 00:05:13,490 --> 00:05:18,410 Jaz bi naredil nosilec i, da bi dobili na nekatere samovoljno številčno indeksirane vrednosti. 119 00:05:18,410 --> 00:05:21,430 Danes začenja v PHP, če vas želijo, da bi dobili na neki vrednosti, 120 00:05:21,430 --> 00:05:24,742 smo nekako imeti več semantični izraznost. 121 00:05:24,742 --> 00:05:27,450 Samo fancy način rekel, da lahko samo pokliči stvari, kar so. 122 00:05:27,450 --> 00:05:29,800 >> In če želite, da bi dobili na simbol nečesa, 123 00:05:29,800 --> 00:05:32,180 Zdaj ste dobesedno storiti citiram konec citata simbol 124 00:05:32,180 --> 00:05:34,910 v oglatih oklepajih namesto zgolj številko. 125 00:05:34,910 --> 00:05:36,450 Torej, to je lepo priročno. 126 00:05:36,450 --> 00:05:38,140 In to je nekako to za zdaj. 127 00:05:38,140 --> 00:05:40,240 Tam je grozde druge funkcije v PHP. 128 00:05:40,240 --> 00:05:43,180 In res, PHP prihaja z pregovorno pomivalno korito. 129 00:05:43,180 --> 00:05:48,640 Desetine, stotine funkcij prihajajo z PHP-- tako veliko več, kot je prišel s C. 130 00:05:48,640 --> 00:05:51,360 >> In to ni namenjeno preplavijo ampak pomaga 131 00:05:51,360 --> 00:05:53,900 se zavedaš, da ne bomo imajo več časa za pisanje kode 132 00:05:53,900 --> 00:05:55,590 to je nekako tukaj konceptualno. 133 00:05:55,590 --> 00:05:58,465 Zdaj bomo lahko šele začeli izkoriščati z veliko bolj napredne funkcije 134 00:05:58,465 --> 00:05:59,920 da imajo jeziki, kot so PHP. 135 00:05:59,920 --> 00:06:02,630 Tako da nam ni treba skrbeti za premika stvari okrog v spomin. 136 00:06:02,630 --> 00:06:05,338 Mi ne bo treba skrbeti knjižnične funkcije malloc in vsi od teh nižjem nivoju, 137 00:06:05,338 --> 00:06:09,390 močne podrobnosti, ki jih boste rokoborbi s, če se ne borijo z, pset5, 138 00:06:09,390 --> 00:06:13,380 vendar lahko začnete Kmalu po sebi umevno. 139 00:06:13,380 --> 00:06:17,770 >> V bistvu, kaj je napisal super preprost program v PHP, kot sledi. 140 00:06:17,770 --> 00:06:21,550 Jaz bom šel z glavo v CS50 IDE tu, in kaj bom naredil 141 00:06:21,550 --> 00:06:29,370 je ustvariti novo datoteko, ki je zelo preprosto se dogaja, da se imenuje zdravo pika PHP. 142 00:06:29,370 --> 00:06:31,860 Torej, namesto pike c, to je dogaja se imenuje dot PHP. 143 00:06:31,860 --> 00:06:34,260 In potem v tej datoteki, Lahko začnete tipkati. 144 00:06:34,260 --> 00:06:36,960 Vendar se izkaže, da je ena stvar, moram vedeti 145 00:06:36,960 --> 00:06:41,470 je, da vsak PHP datoteka v splošnem je treba začeti z neko posebno sintakso. 146 00:06:41,470 --> 00:06:44,570 Podobno kot v duhu HTML, ampak spet, PHP je programski jezik, ne 147 00:06:44,570 --> 00:06:45,590 jezik označevalni. 148 00:06:45,590 --> 00:06:48,700 >> Torej vsak spis, in to je nekako neumno videti bom priznam. 149 00:06:48,700 --> 00:06:50,480 Odpri nosilec, vprašaj, PHP. 150 00:06:50,480 --> 00:06:53,060 In to je samo Jezik je način rekel, 151 00:06:53,060 --> 00:06:58,400 hej, računalnik prihaja nekaj kode napisana v jeziku, ki se imenuje PHP. 152 00:06:58,400 --> 00:07:01,900 In potem na samem koncu svojega spisa, naredite nekakšen nekakšno nasprotje. 153 00:07:01,900 --> 00:07:04,860 Spet ne boste napišete PHP, ki vam samo storiti vprašaj, kotnik. 154 00:07:04,860 --> 00:07:08,500 In potem kaj si dal notri teh dveh oznak, tako rekoč 155 00:07:08,500 --> 00:07:11,490 bo, ali bi moralo biti, PHP kodo. 156 00:07:11,490 --> 00:07:13,180 >> Torej, kaj je narediti nekaj super enostavno. 157 00:07:13,180 --> 00:07:19,370 Grem, da gredo naprej in narediti print def, Hello world, poševnica nazaj n, shranite. 158 00:07:19,370 --> 00:07:27,310 In zdaj na mojem pozivu, da bom storiti, da hello-- ne, bom naredil, 159 00:07:27,310 --> 00:07:28,726 dot poševnica zdravo. 160 00:07:28,726 --> 00:07:31,250 Ne, dot poševnica, hm. 161 00:07:31,250 --> 00:07:32,990 Torej, nekaj je drugače. 162 00:07:32,990 --> 00:07:36,920 In res, to je ključna razlika med PHP in jezike, kot so C. C 163 00:07:36,920 --> 00:07:38,730 je tako imenovani zbrati jezik. 164 00:07:38,730 --> 00:07:40,929 Kaj to pomeni, da je treba zbrati C? 165 00:07:40,929 --> 00:07:41,970 Kaj je posledice? 166 00:07:41,970 --> 00:07:42,898 Ja. 167 00:07:42,898 --> 00:07:45,220 >> OBČINSTVO: ga je napisal v strojno kodo da bi se jih vodijo računalnik. 168 00:07:45,220 --> 00:07:46,011 >> SPEAKER 1: Točno tako. 169 00:07:46,011 --> 00:07:49,075 Moramo najprej pretvoriti v tako imenovano strojno kodo, ničle in tisti, 170 00:07:49,075 --> 00:07:51,950 preden bo to dejansko izvedljivo in razume računalnik. 171 00:07:51,950 --> 00:07:52,840 Z Intel Inside. 172 00:07:52,840 --> 00:07:54,530 CPU znotraj računalnika. 173 00:07:54,530 --> 00:07:58,170 PHP, nasprotno, je tisto, kar se imenuje razlaga jezik, ki 174 00:07:58,170 --> 00:08:02,230 pomeni, da ga ne pripravijo v ničel in enic, strojni kodi, 175 00:08:02,230 --> 00:08:04,360 ste namesto pustite kot izvorne kode. 176 00:08:04,360 --> 00:08:08,130 In ti, namesto da ga prenese kot vhod na program, tolmač 177 00:08:08,130 --> 00:08:11,960 da je nekdo drug napisal pred leti, ki ga razume 178 00:08:11,960 --> 00:08:14,310 vrstico za vrstico, znak za znakom. 179 00:08:14,310 --> 00:08:16,120 Torej z drugimi besedami, ljudje tam napisal 180 00:08:16,120 --> 00:08:19,670 program, ki bo videti na vašo kodo linijo linije, 181 00:08:19,670 --> 00:08:21,680 in ugotoviti, kaj računalnik je treba storiti, 182 00:08:21,680 --> 00:08:25,960 ne da bi jo pretvori neposredno ničel in enic. 183 00:08:25,960 --> 00:08:28,370 >> Torej, če se ji to zdi za zanke, Ta tako imenovani tolmač 184 00:08:28,370 --> 00:08:30,630 se bo podobno, vse v redu, sem morala nekaj narediti znova in znova in znova. 185 00:08:30,630 --> 00:08:31,150 Kaj naj naredim? 186 00:08:31,150 --> 00:08:32,159 Naj poglej v naslednji vrstici. 187 00:08:32,159 --> 00:08:33,367 Naj poglej v naslednji vrstici. 188 00:08:33,367 --> 00:08:35,350 In res ga interpretira po vrsticah. 189 00:08:35,350 --> 00:08:37,220 Tako, da jo izvrši, jaz ne uporabljate make. 190 00:08:37,220 --> 00:08:39,409 Ne uporabljajte dot poševnica v tem primeru. 191 00:08:39,409 --> 00:08:43,530 Jaz namesto narediti PHP, ki je ime programa, alias 192 00:08:43,530 --> 00:08:46,562 Tolmač, ki je vnaprej nameščen v CS50 IDE, 193 00:08:46,562 --> 00:08:48,770 in zdaj moram prestati argument linije ukaz, ki 194 00:08:48,770 --> 00:08:52,290 je preprosto ime izmed datoteko, da želim razložiti. 195 00:08:52,290 --> 00:08:54,740 Ali bolj mimogrede, da želim teči. 196 00:08:54,740 --> 00:08:57,000 In če sem udaril Enter, da jo imamo. 197 00:08:57,000 --> 00:08:57,825 Pozdravljen, svet. 198 00:08:57,825 --> 00:08:59,950 Zdaj se je izkazalo, da sem Rabljeni print def namerno 199 00:08:59,950 --> 00:09:01,600 da nas premostiti od C do PHP. 200 00:09:01,600 --> 00:09:05,150 Večina PHP programerji, kot boste videli, niti ne trudim s pomočjo tiskanja def. 201 00:09:05,150 --> 00:09:08,290 Samo uporabite funkcijo imenovano tiskanja, ki C ni bilo. 202 00:09:08,290 --> 00:09:11,390 In zato, če sem ga ponovi zdaj, je pravzaprav obnaša funkcionalno enaka. 203 00:09:11,390 --> 00:09:13,730 Ne morem uporabljati odstotkov s in odstotek i in tako naprej, 204 00:09:13,730 --> 00:09:16,250 vendar obstajajo tudi drugi načini v PHP o tem. 205 00:09:16,250 --> 00:09:18,100 Toda to je samo pravijo, da skladenjsko, 206 00:09:18,100 --> 00:09:21,850 razen nekaterih čudnih stvari top, in nekatere čudne znake dol 207 00:09:21,850 --> 00:09:25,960 na dnu, koncepti zdaj od programiranje v tem drugem jeziku 208 00:09:25,960 --> 00:09:27,860 se bodo popolnoma enaka. 209 00:09:27,860 --> 00:09:30,120 >> V resnici, kaj je naredil en drug primer. 210 00:09:30,120 --> 00:09:32,520 Tako da sem šel naprej in zaprite datoteko. 211 00:09:32,520 --> 00:09:37,740 Dovolite mi, da ustvarite še eno, da Poklical bom pogoje, 1 pika PHP. 212 00:09:37,740 --> 00:09:40,770 Torej ni nič, ker tisto, kar sem storil Bil sem pogledal nazaj, pred nekaj tedni, 213 00:09:40,770 --> 00:09:43,490 smo imeli datoteko z imenom Pogoji 1 pika C. In kaj 214 00:09:43,490 --> 00:09:47,590 Sem si ga pretvori v mojem glava in sem na papirju, 215 00:09:47,590 --> 00:09:51,290 in kmalu na tečaj je Spletna stran, vrstico za vrstico v PHP. 216 00:09:51,290 --> 00:09:55,520 >> Torej, v različici C, smo naredili nekaj kot niz je dobil dobil niz. 217 00:09:55,520 --> 00:09:58,200 Torej, to je malo drugačna za to, da v PHP. 218 00:09:58,200 --> 00:10:01,390 Namesto, da sem šele tekoč storiti, ali bolje, sem 219 00:10:01,390 --> 00:10:05,870 morda naredil int n dobi dobili int, v tem primeru prej. 220 00:10:05,870 --> 00:10:12,600 Torej, namesto, da grem narediti n gets prebrati črto, bi rad celo število, 221 00:10:12,600 --> 00:10:13,670 prosim. 222 00:10:13,670 --> 00:10:15,110 Torej, to je samo moj poziv. 223 00:10:15,110 --> 00:10:17,260 In tako se je izkazalo, in Rad bi vedel, samo to 224 00:10:17,260 --> 00:10:20,480 od prebrali ali videli funkcijo Prej, preberite linije funkcije v PHP 225 00:10:20,480 --> 00:10:23,810 je argument, da je takojšnja za človeka, in njen namen v življenju 226 00:10:23,810 --> 00:10:26,220 je, da se glasi vrstico besedila da je on ali ona vrste v. 227 00:10:26,220 --> 00:10:29,160 In potem je trgovin, ki besedilo v spremenljivo n. 228 00:10:29,160 --> 00:10:32,200 >> In zdaj bom morda želeli storiti nekaj kot sem storil tedni kot tednu 229 00:10:32,200 --> 00:10:33,290 eden od razreda. 230 00:10:33,290 --> 00:10:36,600 Če je n večji kot nič, potem bom 231 00:10:36,600 --> 00:10:42,930 izposoditi to sintakso smo pravkar videli, print def, ste izbrali pozitivno število, 232 00:10:42,930 --> 00:10:44,360 poševnica nazaj n. 233 00:10:44,360 --> 00:10:49,990 Else if n enaka enaka nič, sem dogaja, da gredo naprej in rekli, print def, 234 00:10:49,990 --> 00:10:54,090 ste pobrali nič poševnica nazaj n. 235 00:10:54,090 --> 00:10:56,830 Else, tukaj bi morala v primeru Seveda bo, print def, 236 00:10:56,830 --> 00:10:58,620 ste pobrali negativno število. 237 00:10:58,620 --> 00:11:00,970 >> In bomo lahko zagotovo izvajati logika to stvar 238 00:11:00,970 --> 00:11:03,390 v kup razlikuje načinov, vendar je točka tukaj 239 00:11:03,390 --> 00:11:07,210 je, da je skladenjsko, Komaj kaj je novega. 240 00:11:07,210 --> 00:11:09,830 To je samo znak za dolar in nova funkcija in brati črta. 241 00:11:09,830 --> 00:11:12,090 Ampak v bistvu, kaj je novega zdaj sem tolmačenje tega. 242 00:11:12,090 --> 00:11:13,910 Jaz sem ga mimo kot vhod v drug program. 243 00:11:13,910 --> 00:11:16,620 Torej, če želim teči to, če Nisem naredil nobene napake, 244 00:11:16,620 --> 00:11:20,140 Jaz grem teči PHP, od Pogoji 1 pika PHP, Enter 245 00:11:20,140 --> 00:11:23,440 Grem, da tip v številko 50, in kaj je domnevati, za zdaj deluje. 246 00:11:23,440 --> 00:11:25,940 Ker je logika je Enako stvari kot en teden. 247 00:11:25,940 --> 00:11:28,020 >> Vse je v redu, tako da je precej underwhelming, kajne? 248 00:11:28,020 --> 00:11:30,240 Mi lahko to storite v katerem koli število jezikov. 249 00:11:30,240 --> 00:11:33,200 Naredimo nekaj veliko bolj močna. 250 00:11:33,200 --> 00:11:35,610 Končajmo problem nastaviti pet. 251 00:11:35,610 --> 00:11:37,370 Tako da sem šel naprej in to storite. 252 00:11:37,370 --> 00:11:42,920 Bom ustvariti datoteko imenuje angleški dot PHP, 253 00:11:42,920 --> 00:11:45,424 in nagnjena, kot si lahko Izokrenuti dol veliko zapiskov, 254 00:11:45,424 --> 00:11:47,340 pojasnila bo pomagal samo ste, če ste dovoljeno 255 00:11:47,340 --> 00:11:48,923 izvajati težave nastaviti pet v PHP. 256 00:11:48,923 --> 00:11:52,706 Ampak bomo videli, kako se zdaj hitro smo lahko izvaja ta isti problem niz. 257 00:11:52,706 --> 00:11:56,830 >> Torej v slovarju dot PHP, bom domneva, da je že 258 00:11:56,830 --> 00:11:58,514 datoteka v svetu imenuje Speller. 259 00:11:58,514 --> 00:12:01,430 In res, sem to storil vnaprej, in ne bomo hodili po tej liniji 260 00:12:01,430 --> 00:12:03,596 po liniji, vendar če ste radoveden kasneje in res želim 261 00:12:03,596 --> 00:12:06,250 zaviti vaš um okoli Razlike med C in PHP, 262 00:12:06,250 --> 00:12:09,030 dobesedno primerjati te datoteke, Speller, od današnjega izvorne kode 263 00:12:09,030 --> 00:12:11,190 da bomo objavili kasneje danes, proti p niz 264 00:12:11,190 --> 00:12:15,309 pet Speller dot c, da vam dajo, in to je skoraj enako po vrsticah. 265 00:12:15,309 --> 00:12:16,600 Tukaj je nekaj več dolarskih znakov. 266 00:12:16,600 --> 00:12:18,330 Nekaj ​​funkcij so malo drugačna. 267 00:12:18,330 --> 00:12:20,038 Ampak to je lep način od nekako vidim, kako 268 00:12:20,038 --> 00:12:22,740 prevajate enega jezika v drugega. 269 00:12:22,740 --> 00:12:24,812 In to je skoraj identična vrstica za vrstico. 270 00:12:24,812 --> 00:12:27,770 Ampak jaz bom za domnevo, da je ta obstaja, in kaj bom naredil tukaj 271 00:12:27,770 --> 00:12:31,310 se poskusite razstrelili vaš moti ga reimplementing 272 00:12:31,310 --> 00:12:36,210 celota problema določi pet pot hitreje, kot ste delali doslej. 273 00:12:36,210 --> 00:12:39,330 Tako, na primer, bom najprej razglasi globalno spremenljivko imenovano velikost, 274 00:12:39,330 --> 00:12:40,444 in jo nastavite na nič. 275 00:12:40,444 --> 00:12:41,610 Zdaj pa, da to ni veliko prihrankov. 276 00:12:41,610 --> 00:12:44,170 Kvota ste izvajali Velikost precej enako, 277 00:12:44,170 --> 00:12:48,440 ali namig namig, bo nocoj ali jutri, samo z globalno spremenljivko, imenovano 278 00:12:48,440 --> 00:12:49,900 velikost in jo nastavitev enaka nič. 279 00:12:49,900 --> 00:12:52,660 To ni posebej neverjetno spojler. 280 00:12:52,660 --> 00:12:57,180 >> Torej, kaj so vaši podatki strukture izbira, tiste, ki so se potapljali v 281 00:12:57,180 --> 00:13:02,170 in preberite spec, kaj podatkovne strukture večina od vas so bili z uporabo? 282 00:13:02,170 --> 00:13:06,840 Zgoščene tabele ali poskusiti, morda nekatere njegove variante. 283 00:13:06,840 --> 00:13:10,490 Torej izvajanje hash tabelo vsaj, je nekako veliko vrstic kode, 284 00:13:10,490 --> 00:13:10,990 prav? 285 00:13:10,990 --> 00:13:13,700 In niso vsi od njih je lahko funkcionalen na tej točki v tednu, 286 00:13:13,700 --> 00:13:14,366 ampak to je v redu. 287 00:13:14,366 --> 00:13:19,300 Ker v PHP, če sem želijo razpršene tabele, storjeno. 288 00:13:19,300 --> 00:13:20,260 Prav? 289 00:13:20,260 --> 00:13:22,610 Torej te spremenljivke, ki sem jih Pravkar razglašena očitno 290 00:13:22,610 --> 00:13:26,180 imenuje znak za dolar miza, po vnosu poprej. 291 00:13:26,180 --> 00:13:28,902 >> Ampak res samo želim, na Konec dneva, niz. 292 00:13:28,902 --> 00:13:31,610 Vendar ni številčno indeksirajo matrika, ker je to kot dva tedna 293 00:13:31,610 --> 00:13:33,440 stvari, ko smo govorili o nizi. 294 00:13:33,440 --> 00:13:34,850 Hočem razpršene tabele. 295 00:13:34,850 --> 00:13:38,070 Toda hash tabela je res le konkreten način rekel, 296 00:13:38,070 --> 00:13:40,190 želite, asociativno paleto. 297 00:13:40,190 --> 00:13:43,270 Hočeš, da bi lahko sodelavec ključe z vrednostmi. 298 00:13:43,270 --> 00:13:44,200 Tipke z vrednostmi. 299 00:13:44,200 --> 00:13:45,640 Kaj je slovar, res? 300 00:13:45,640 --> 00:13:47,080 No, to je cel kup tipk. 301 00:13:47,080 --> 00:13:50,320 Besede, kot so jabolka, hruške in banane, in vse te angleških besed 302 00:13:50,320 --> 00:13:51,490 da vam roko. 303 00:13:51,490 --> 00:13:54,820 >> In vrednote, ki si učinkovito vstavite v vašem slovarju 304 00:13:54,820 --> 00:13:57,790 so bodisi res, ali odsotnost, napačen. 305 00:13:57,790 --> 00:14:00,540 Z drugimi besedami, ki jih vstavljate cel kup parov vrednosti ključev, 306 00:14:00,540 --> 00:14:03,720 jabolko, res, hruške, res, banana, res. 307 00:14:03,720 --> 00:14:07,446 Tako, da ko si pridobite ali pogled do teh podatkov v vašem hash tabele 308 00:14:07,446 --> 00:14:10,070 s svojo check funkcijo, ste bodisi dobili nazaj odgovor, 309 00:14:10,070 --> 00:14:13,260 ja, sem ga našel v mojem kompleks hash tabelo ali ne, to ni tam, 310 00:14:13,260 --> 00:14:14,540 tako da se vrnete false. 311 00:14:14,540 --> 00:14:19,440 >> Torej za to, vse kar rabim je podatki struktura, kot sem predlagal prej. 312 00:14:19,440 --> 00:14:22,050 Moram biti sposobni povezati besede 313 00:14:22,050 --> 00:14:25,570 kot, citiram konec citata, simbol, z vrednostjo, kot je, pravi. 314 00:14:25,570 --> 00:14:27,090 Torej je moj hash tabele. 315 00:14:27,090 --> 00:14:28,180 Naj jo dejansko uporabljate. 316 00:14:28,180 --> 00:14:30,310 Torej je nekaj funkcij Moram izvajati. 317 00:14:30,310 --> 00:14:33,300 Grem, da gredo naprej in grizejo off funkcijo imenovano velikosti. 318 00:14:33,300 --> 00:14:34,390 To traja nobenih argumentov. 319 00:14:34,390 --> 00:14:36,660 Nimam ukvarjati s beseda, nična v PHP. 320 00:14:36,660 --> 00:14:38,770 Jaz sem preprosto dogaja, da se vrnete velikosti. 321 00:14:38,770 --> 00:14:41,287 >> In kot prahi, PHP ima to minorly siten podrobnost, 322 00:14:41,287 --> 00:14:44,620 kjer je, če je nekaj po vsem svetu, boste morali povej funkcijo, v katerem jo uporabljate 323 00:14:44,620 --> 00:14:46,220 je, hej, to je globalna spremenljivka. 324 00:14:46,220 --> 00:14:49,330 Torej, manjše neumnosti, vendar vam morali to storiti vseeno. 325 00:14:49,330 --> 00:14:50,920 >> Torej, kaj je obremenitev? 326 00:14:50,920 --> 00:14:52,990 Jaz grem za izvajanje funkcija imenuje obremenitev 327 00:14:52,990 --> 00:14:56,790 ki je v imenu slovarju, tako kot v problem nastaviti pet. 328 00:14:56,790 --> 00:14:59,554 In preden sem nadaljevati, opazili, da nimam 329 00:14:59,554 --> 00:15:00,970 bil tipkanje povsem enake stvari. 330 00:15:00,970 --> 00:15:06,060 Kaj je očitno drugačna v PHP o kako se razglasi funkcijo primerjavi C? 331 00:15:06,060 --> 00:15:06,616 Ja. 332 00:15:06,616 --> 00:15:07,490 OBČINSTVO: [neslišno] 333 00:15:07,490 --> 00:15:08,573 SPEAKER 1: Ni tip donos. 334 00:15:08,573 --> 00:15:12,350 In res, da je temu tako, PHP kolikor je to ohlapno tipkal, 335 00:15:12,350 --> 00:15:14,190 je tudi malo površni v tem smislu. 336 00:15:14,190 --> 00:15:17,680 Vi ne določajo kot programer kaj ta funkcija vrne. 337 00:15:17,680 --> 00:15:20,490 Ti bi morali dejansko videti na kodo, da ugotovimo, da je ven. 338 00:15:20,490 --> 00:15:22,670 Ali brati komentarje ali dokumentacijo. 339 00:15:22,670 --> 00:15:24,870 Tako pluse in minuse za te vrste odločitev. 340 00:15:24,870 --> 00:15:26,750 Ampak jaz moram reči Ključna beseda, funkcija. 341 00:15:26,750 --> 00:15:28,360 In ko smo se naučili JavaScript v nekaj tednih 342 00:15:28,360 --> 00:15:31,026 bomo videli isto stvar še enkrat, vendar je ista ideja. 343 00:15:31,026 --> 00:15:34,220 Ime funkcije, njena trditev ali trditve ali pomanjkanje le-teh in zdaj 344 00:15:34,220 --> 00:15:35,630 Tukaj je izvajanje. 345 00:15:35,630 --> 00:15:38,860 >> Tako da bom za zmanjšanje nekaterih koncih samo biti dramatičen samo za trenutek. 346 00:15:38,860 --> 00:15:40,485 Ampak jaz grem, da gredo naprej in to povem. 347 00:15:40,485 --> 00:15:44,890 To je, kako sem lahko naložite datoteka v array. 348 00:15:44,890 --> 00:15:47,580 Obstaja funkcija v PHP pozval datoteke. 349 00:15:47,580 --> 00:15:49,300 Vam je ime datoteke roko. 350 00:15:49,300 --> 00:15:53,950 To vam roke nazaj niz, v notranjosti od katerih je vsaka vrstica iz spisa. 351 00:15:53,950 --> 00:15:56,480 Od nič, ena, gor do n minus 1 linij. 352 00:15:56,480 --> 00:15:57,210 To je to, kajne? 353 00:15:57,210 --> 00:15:57,990 Ni f branje. 354 00:15:57,990 --> 00:15:58,826 Ni f zaslužiti s. 355 00:15:58,826 --> 00:15:59,700 Ni odstotkov ov. 356 00:15:59,700 --> 00:16:00,420 Tukaj ni glavobolov. 357 00:16:00,420 --> 00:16:01,220 Ni feof. 358 00:16:01,220 --> 00:16:03,950 Vse te stvari, s katerimi ste bili rokoborba morda, 359 00:16:03,950 --> 00:16:06,550 s p nastavite štiri in pet, izgine. 360 00:16:06,550 --> 00:16:09,450 >> Torej sem prebral te vrstice v Moodle datoteko, in potem veš kaj? 361 00:16:09,450 --> 00:16:15,510 Če želim Ponovil nad temi besedami, Ne morem storiti, za vsako linije kot linije. 362 00:16:15,510 --> 00:16:19,992 Ne pozabite, da je bil to nekakšen pameten način ponavljanjem preko diod, indeks 363 00:16:19,992 --> 00:16:25,090 z indeksom, in na vsaki ponovitveni kliče trenutna vrstica, znak za dolar linijo. 364 00:16:25,090 --> 00:16:31,560 In prav tukaj bom šel in pravijo, miza, nosilec, linija, postane res. 365 00:16:31,560 --> 00:16:35,880 >> Z drugimi besedami, to je, kako sem vstavite v mojem hash tabelo v PHP. 366 00:16:35,880 --> 00:16:38,740 Pravim znak za dolar tabelo, ki je moj asociativno paleto, ki je bil 367 00:16:38,740 --> 00:16:40,690 prazni na vrstico kode up zgoraj. 368 00:16:40,690 --> 00:16:42,790 Nato sem indeks vanjo ne uporabljajo več, 369 00:16:42,790 --> 00:16:45,300 ampak dobesedno uporabo ključna beseda, ki mi je mar. 370 00:16:45,300 --> 00:16:47,730 Mogoče je jabolko ali hruška ali banana ali karkoli, 371 00:16:47,730 --> 00:16:51,645 toda posebej sem indeksiranje vanjo rad sem predlagal prej. 372 00:16:51,645 --> 00:16:53,770 Vzamem ime moje asociativni niz, potem pa sem 373 00:16:53,770 --> 00:16:56,450 quote citata uporabite v oglati oklepaji z vrvico, 374 00:16:56,450 --> 00:16:58,490 namesto dejanskega števila. 375 00:16:58,490 --> 00:17:00,250 >> In tako, da je to. 376 00:17:00,250 --> 00:17:01,720 Funkcija obremenitev je naredil. 377 00:17:01,720 --> 00:17:05,119 Ko se to zanka se ponovi, sem dal vse, kar je v hash tabelo. 378 00:17:05,119 --> 00:17:07,810 Zdaj majhen disclaimer, tam je Nekaj ​​stvari, ki mi jih je popraviti. 379 00:17:07,810 --> 00:17:10,030 In različico bom objavili na spletu bodo imeli vse nianse, 380 00:17:10,030 --> 00:17:12,670 vendar je večinoma le, da bo treba nekatere preverjanje napak in nekaj manjših poteg. 381 00:17:12,670 --> 00:17:14,044 Ampak to je res bistvo tega. 382 00:17:14,044 --> 00:17:16,750 Če sem zdaj želijo izvajati funkcija imenuje 383 00:17:16,750 --> 00:17:19,869 ček, ki pričakuje, da bo Beseda kot svoj argument, 384 00:17:19,869 --> 00:17:22,099 kako bi jaz šel o tem? 385 00:17:22,099 --> 00:17:30,020 No, jaz sem samo reči, če znotraj moji mizi, na lokaciji besedo, 386 00:17:30,020 --> 00:17:30,652 če je nastavljen. 387 00:17:30,652 --> 00:17:32,360 Torej, če obstaja is-- pravzaprav, veste kaj? 388 00:17:32,360 --> 00:17:34,830 Bom, da to storite v malo psevdokoda. 389 00:17:34,830 --> 00:17:36,020 Ampak ideja je ista. 390 00:17:36,020 --> 00:17:41,640 Če je to enak true, vrne true. 391 00:17:41,640 --> 00:17:43,890 V redu. 392 00:17:43,890 --> 00:17:46,851 Else-- lahko nekako videli, kje to je going-- vrne false. 393 00:17:46,851 --> 00:17:47,350 Končano. 394 00:17:47,350 --> 00:17:49,640 Preverjanje se opravi. 395 00:17:49,640 --> 00:17:50,940 >> Zelo lepo, kajne? 396 00:17:50,940 --> 00:17:52,560 In kaj je to res dobili ob? 397 00:17:52,560 --> 00:17:53,680 In tudi to, sem zmanjšal nekatere kotičke. 398 00:17:53,680 --> 00:17:56,020 Poglej različici spletu Za vse manjšimi razlikami. 399 00:17:56,020 --> 00:17:57,103 Ampak to je bistvo tega. 400 00:17:57,103 --> 00:17:59,080 Indeks v vaš asociativno paleto, alias 401 00:17:59,080 --> 00:18:02,910 Hash tabela, vidim, če je vrednost tam, če je to nastavljeno na true, in če je tako, 402 00:18:02,910 --> 00:18:03,930 return true. 403 00:18:03,930 --> 00:18:05,819 Torej smo whittled navzdol vse kompleksnosti. 404 00:18:05,819 --> 00:18:07,110 Tako nekako mislih piha, kajne? 405 00:18:07,110 --> 00:18:09,680 Sem se trudil, ne bo ga na koncu pa raztovoriti, ker v fact-- oh, veš kaj? 406 00:18:09,680 --> 00:18:11,620 Ja, dajmo končati s raztovoriti. 407 00:18:11,620 --> 00:18:18,940 >> Izkrcali v hash tabele morda videti kot funkcijo praznjenju, vrniti. 408 00:18:18,940 --> 00:18:19,930 OK, tako da je praznenja. 409 00:18:19,930 --> 00:18:21,350 Ker ni nič za raztovarjanje, kajne? 410 00:18:21,350 --> 00:18:22,170 Ni malloc. 411 00:18:22,170 --> 00:18:24,280 Nisem izrecno vprašajte operacijski sistem za karkoli. 412 00:18:24,280 --> 00:18:25,571 Pravkar sem začel uporabljati spremenljivk. 413 00:18:25,571 --> 00:18:30,510 In tako je tudi to manifestacija značilnosti višjih jezikih ravni. 414 00:18:30,510 --> 00:18:32,940 Torej še enkrat, večina tega izraza smo se ukvarjajo tukaj 415 00:18:32,940 --> 00:18:34,280 s C. Super nizki ravni. 416 00:18:34,280 --> 00:18:35,980 Si lahko ogledate pomnilnika računalnika. 417 00:18:35,980 --> 00:18:38,440 Lahko dotikajte se ničesar vam želite v računalniku RAM, 418 00:18:38,440 --> 00:18:39,440 za boljše ali slabše. 419 00:18:39,440 --> 00:18:41,760 >> Tu gor, gremo odreči to moč. 420 00:18:41,760 --> 00:18:44,730 Ampak moj bog, poglej, kako veliko manj kode sem napisal. 421 00:18:44,730 --> 00:18:47,660 V bistvu, če bi bil jaz ne govorim in govoril čez moje tipkanje, 422 00:18:47,660 --> 00:18:50,190 smo bili, bi naredil z ta primer pred petimi minutami. 423 00:18:50,190 --> 00:18:52,150 Torej, kaj je cena, ki se plača? 424 00:18:52,150 --> 00:18:54,100 No, pa si poglej. 425 00:18:54,100 --> 00:18:55,340 Oglejmo pogled. 426 00:18:55,340 --> 00:18:59,340 Grem, da gredo naprej in zagon CS50. 427 00:18:59,340 --> 00:19:02,160 Naj najprej iti v današnji primeri, ko 428 00:19:02,160 --> 00:19:03,970 Imam imenik tekste kot prej. 429 00:19:03,970 --> 00:19:08,520 Jaz grem teči rešitev, ki gre s težavo nastavite pet imenuje 430 00:19:08,520 --> 00:19:11,190 Speller, ki je v računu CS50 je. 431 00:19:11,190 --> 00:19:14,040 >> In bom, da ga vodijo na nekaj velik kot Svetega pisma kralja Jakoba, 432 00:19:14,040 --> 00:19:16,547 samo zato, da smo res dal kadrovske rešitve na preizkušnji. 433 00:19:16,547 --> 00:19:19,130 Zdaj včasih internet je malo počasneje, malo hitreje, 434 00:19:19,130 --> 00:19:20,338 Morda bo trajalo nekaj časa, da se premaknete. 435 00:19:20,338 --> 00:19:23,730 A je bilo skupno .56 sekundah za preverjanje črkovanja King James 436 00:19:23,730 --> 00:19:25,150 Sveto pismo z rešitvijo osebja. 437 00:19:25,150 --> 00:19:25,620 Torej, zelo dobro. 438 00:19:25,620 --> 00:19:27,786 Lep lahko veliko počasnejši, in to je popolnoma v redu. 439 00:19:27,786 --> 00:19:30,090 Ampak to je pravilna tukaj. 440 00:19:30,090 --> 00:19:32,440 Tako da je rešitev osebje. 441 00:19:32,440 --> 00:19:34,785 Če grem v in pospraviti PHP različico. 442 00:19:34,785 --> 00:19:36,990 In bom naredil malo kot pecilni kažejo stvar. 443 00:19:36,990 --> 00:19:39,720 Bomo vzeli kodo sem napisal prej, tako da je popolnoma pravilna. 444 00:19:39,720 --> 00:19:42,678 Ker je koda sem napisal, ne bo biti popolnoma pravilna šele zdaj. 445 00:19:42,678 --> 00:19:47,310 Ampak, če sem teči PHP verzije, kaj moram odreči danes? 446 00:19:47,310 --> 00:19:49,980 Je zame pet minut, da izvajati p nastavite pet, Trdim. 447 00:19:49,980 --> 00:19:51,770 Kakšno ceno sem plačal? 448 00:19:51,770 --> 00:19:52,270 Ja. 449 00:19:52,270 --> 00:19:52,937 >> OBČINSTVO: Speed. 450 00:19:52,937 --> 00:19:53,645 SPEAKER 1: Speed. 451 00:19:53,645 --> 00:19:54,380 Kaj misliš s tem? 452 00:19:54,380 --> 00:19:55,230 >> OBČINSTVO: To bo trajalo dlje. 453 00:19:55,230 --> 00:19:55,660 >> SPEAKER 1: V redu. 454 00:19:55,660 --> 00:19:56,160 Pa poglejmo. 455 00:19:56,160 --> 00:19:59,590 To bo trajalo dlje, ne pisati, ampak da bi sistem deloval. 456 00:19:59,590 --> 00:20:00,090 Ja. 457 00:20:00,090 --> 00:20:00,960 Torej, poskusimo to. 458 00:20:00,960 --> 00:20:05,720 Torej, tukaj bom, da gredo naprej in narediti PHP Speller, in ker je datoteka je 459 00:20:05,720 --> 00:20:06,360 imenuje Speller. 460 00:20:06,360 --> 00:20:07,580 Torej, jaz ne teče slovar, odpoklic, 461 00:20:07,580 --> 00:20:09,204 Tečem program, imenovan Speller. 462 00:20:09,204 --> 00:20:12,450 Grem, da prenese v isti Datoteka, King James peti. 463 00:20:12,450 --> 00:20:14,377 To je letijo. 464 00:20:14,377 --> 00:20:17,210 To lahko samo hitrost interneta, tako ne bere preveč v to. 465 00:20:17,210 --> 00:20:21,680 Ampak to ne čutijo več, zagotovo. 466 00:20:21,680 --> 00:20:23,280 1.26 sekund. 467 00:20:23,280 --> 00:20:25,150 >> Zdaj pa, da je še vedno precej presneto hitro, kajne? 468 00:20:25,150 --> 00:20:28,140 In edini razlog, da je počutil kot več kot tremi ali štirimi ali petimi 469 00:20:28,140 --> 00:20:30,515 sekund, da je samo zato, ker internet je pa počasen. 470 00:20:30,515 --> 00:20:33,980 Čas računalnik preživel bil 1,26 sekund, versus mislim 0,56. 471 00:20:33,980 --> 00:20:35,880 Torej, več kot dvakrat počasi. 472 00:20:35,880 --> 00:20:39,170 Zdaj pa, da je še vedno precej darn hitro, vendar je manifestacija 473 00:20:39,170 --> 00:20:40,860 o, res, da natančne cene. 474 00:20:40,860 --> 00:20:43,460 >> Ker smo tolmačenje v kodo linijo linije, 475 00:20:43,460 --> 00:20:46,740 in da je program PHP bere moj koda zgoraj navzdol, od leve proti desni, 476 00:20:46,740 --> 00:20:47,940 mora storiti več razmišljanja. 477 00:20:47,940 --> 00:20:50,430 To je vrsta pretvorbo je v sebi 478 00:20:50,430 --> 00:20:53,464 z ustreznim strojem koda na letenje, tako rekoč, 479 00:20:53,464 --> 00:20:55,380 čeprav mehaniki so malce drugačni. 480 00:20:55,380 --> 00:20:59,430 Namesto samo hranjenje do Intel CPU surovin ničel in enic 481 00:20:59,430 --> 00:21:00,930 da razume izvorno. 482 00:21:00,930 --> 00:21:04,110 >> Torej absolutno, roke dol, smo plačali ceno. 483 00:21:04,110 --> 00:21:09,120 In koda napisana v jeziku kot so PHP kaže, da je počasnejši. 484 00:21:09,120 --> 00:21:10,050 Ampak moj bog. 485 00:21:10,050 --> 00:21:12,740 Torej, zdaj, ko sem črkovati ček moj Datoteka, sem preživela dodatno 0,7 486 00:21:12,740 --> 00:21:17,280 ali tako sekundami vs 20 ur za izvajanje hitrejši črkovalnik, kajne? 487 00:21:17,280 --> 00:21:18,397 To je nekakšen kompromis. 488 00:21:18,397 --> 00:21:20,980 In če ste šele začenjajo p nastavite pet, morda ne bo 20 ur. 489 00:21:20,980 --> 00:21:22,188 Bi bilo veliko manj od tega. 490 00:21:22,188 --> 00:21:23,600 Ampak to je kompromis, zares. 491 00:21:23,600 --> 00:21:27,820 In če ste tekmovanje v teku kodo na res velik zbirk podatkov, ali celo starejše strojne opreme, 492 00:21:27,820 --> 00:21:32,650 tiste vrste razlik lahko vsekakor sešteti. 493 00:21:32,650 --> 00:21:34,880 >> Vsa vprašanja doslej? 494 00:21:34,880 --> 00:21:35,617 Ja. 495 00:21:35,617 --> 00:21:36,492 >> OBČINSTVO: [neslišno] 496 00:21:36,492 --> 00:21:38,187 497 00:21:38,187 --> 00:21:39,978 SPEAKER 1: Žal mi je, lahko rečeš še enkrat? 498 00:21:39,978 --> 00:21:40,853 OBČINSTVO: [neslišno] 499 00:21:40,853 --> 00:21:43,326 500 00:21:43,326 --> 00:21:44,700 SPEAKER 1: boš obupal čas. 501 00:21:44,700 --> 00:21:45,283 No, tako ja. 502 00:21:45,283 --> 00:21:47,322 Ste prihranek časa, ki ga ne da bi jo pripravijo, 503 00:21:47,322 --> 00:21:48,530 če je to tisto, kar si vprašal. 504 00:21:48,530 --> 00:21:50,710 In res, v CS50, večina programov, 505 00:21:50,710 --> 00:21:53,668 čeprav bi lahko trajalo nekaj časa pisati, oni so relativno kratke. 506 00:21:53,668 --> 00:21:56,860 Nekaj ​​deset, nekaj sto vrstic kode, in tako zbere precej hitro. 507 00:21:56,860 --> 00:21:58,470 Toda, ko začnete pisanje večje programe, 508 00:21:58,470 --> 00:22:01,511 kot če ste Microsoft ali ste Google in pisanje res veliki programi 509 00:22:01,511 --> 00:22:05,360 v C ali C ++, ali podobno zbirajo jeziki, lahko traja več sekund, 510 00:22:05,360 --> 00:22:08,577 ali celo minut ali dlje zbere milijone vrstic kode. 511 00:22:08,577 --> 00:22:10,660 In tudi tam, da Razlika se bo sešteti. 512 00:22:10,660 --> 00:22:12,840 >> In v resnici, ko smo Prehod danes, isti dan 513 00:22:12,840 --> 00:22:15,910 danes, da spletno programiranje uporabo PHP, ste 514 00:22:15,910 --> 00:22:18,460 tekoč, da ga samo toliko najti bolj prijetno za pisanje kode 515 00:22:18,460 --> 00:22:21,501 ko ne boste imeli, da se ti neumen koraki, kot so spremembe na vašem terminalu 516 00:22:21,501 --> 00:22:24,202 okno, tip make zdravo, re teči, osvežite okno. 517 00:22:24,202 --> 00:22:25,910 Samo toliko neumen mehanske koraki, ki 518 00:22:25,910 --> 00:22:28,480 samo priti v način delovanja zanimivo, zabavno delo. 519 00:22:28,480 --> 00:22:31,450 In res vržemo proč, s PHP. 520 00:22:31,450 --> 00:22:34,960 In bomo lahko interakcijo z njim hitreje. 521 00:22:34,960 --> 00:22:35,495 Ja. 522 00:22:35,495 --> 00:22:36,370 OBČINSTVO: [neslišno] 523 00:22:36,370 --> 00:22:40,294 524 00:22:40,294 --> 00:22:40,960 SPEAKER 1: Seveda. 525 00:22:40,960 --> 00:22:42,876 Morem pojasniti, kaj je pomeni, ki jih je treba razlagati? 526 00:22:42,876 --> 00:22:45,870 Ko se zbere jezik kot C, gre navzdol 527 00:22:45,870 --> 00:22:48,140 kot smo rekli, da stroj Koda, ničel in enic. 528 00:22:48,140 --> 00:22:51,860 In Intel se odločili že pred leti, da nekateri vzorci ničel in enic 529 00:22:51,860 --> 00:22:56,220 predstavljajo seštevanje ali odštevanje, ali tiskanje ali druge osnovne operacije. 530 00:22:56,220 --> 00:23:00,250 V svetu interpretiranem jeziku kot so PHP, ali JavaScript ali Python, 531 00:23:00,250 --> 00:23:03,120 ali Ruby, ali grozde drugi, namesto da bi nekdo 532 00:23:03,120 --> 00:23:05,120 je napisal interpreter-- v tem primeru, 533 00:23:05,120 --> 00:23:09,770 to se imenuje tudi PHP, ki je enak ime za language--, ki v bistvu 534 00:23:09,770 --> 00:23:13,840 Ima veliko zanko na to, da se ponovi nad vse vrstic kode 535 00:23:13,840 --> 00:23:18,170 da sem ga hraniti kot vložek, kot je zdravo dot PHP ali angleški dot PHP. 536 00:23:18,170 --> 00:23:21,760 >> In potem si lahko zamislite njihova velika zanke, da ima veliko pogojev. 537 00:23:21,760 --> 00:23:26,340 In ti pogoji pravijo, če človek je napisal ključno besedo za, 538 00:23:26,340 --> 00:23:28,470 začeti početje njegov ali njen Koda znova in znova. 539 00:23:28,470 --> 00:23:31,360 Ali če ima človek napisal vrstico kode, 540 00:23:31,360 --> 00:23:34,880 če je le izvajanje svojih Naslednja vrstica pogojno. 541 00:23:34,880 --> 00:23:37,740 Torej, to je resnično všeč tolmačenje je v človeškem smislu, linijo 542 00:23:37,740 --> 00:23:39,660 s črto, in da je samo čas. 543 00:23:39,660 --> 00:23:41,340 To traja režijske stroške. 544 00:23:41,340 --> 00:23:44,189 In da je price-- dobra question-- bomo plačali. 545 00:23:44,189 --> 00:23:46,480 Torej, kaj je naredil še en demo da je malo bolj dramatična. 546 00:23:46,480 --> 00:23:51,160 Tam je, bi rekel, A Športni teren to na 90% verjetnost, da ni grozno, 547 00:23:51,160 --> 00:23:53,869 vendar boste presenečeni z 10% verjetnostjo. 548 00:23:53,869 --> 00:23:55,660 Torej, vsako leto se trudimo za to, pri čemer smo 549 00:23:55,660 --> 00:23:59,061 poskusite napisati program, ki gre skozi Problem nastavite nič, za katero ste 550 00:23:59,061 --> 00:24:02,060 predložile svoje telefonske številke ter Veliko drugih demografskih podatkov, 551 00:24:02,060 --> 00:24:06,030 in smo programsko vam poslali sporočilo. 552 00:24:06,030 --> 00:24:08,540 In potem telefon vsakogar začne piskati ali vibriranja, 553 00:24:08,540 --> 00:24:11,460 in to je neverjetno, saj dobro, poglej kaj računalniki lahko storite. 554 00:24:11,460 --> 00:24:13,840 >> To redko deluje pravilno zdi se, v veliki meri 555 00:24:13,840 --> 00:24:16,800 ker sem se ponavadi črni listi Gmail ali kakšno drugo storitev 556 00:24:16,800 --> 00:24:19,630 za dejansko poskuša, da to storijo na lestvici. 557 00:24:19,630 --> 00:24:24,940 Ampak smešna stvar je preveč, saj smo nimajo vsi danes tukaj, 558 00:24:24,940 --> 00:24:27,690 zabavno dejstvo, zadnjič, ko smo poskusili to pred dvema letoma, 559 00:24:27,690 --> 00:24:30,870 Mislim, da sem napisal program ki je sedel v zanko ponavljanjem 560 00:24:30,870 --> 00:24:34,040 nad vsemi učenci v razredu, in vsak od njih besedilna sporočila, 561 00:24:34,040 --> 00:24:37,534 in je rekel nekaj podobnega, zakaj nisi na predavanju? 562 00:24:37,534 --> 00:24:39,170 Ljubezen, CS50 bot. 563 00:24:39,170 --> 00:24:42,580 >> Nimaš pojma, koliko opravičeval in nekako boleče emails 564 00:24:42,580 --> 00:24:46,970 Sem prejel odgovor od n minus 100 ljudi, ki niso bili tukaj 565 00:24:46,970 --> 00:24:47,960 tisti dan. 566 00:24:47,960 --> 00:24:52,116 In še bolj smešen, bolj sramotno story-- Veš, kaj je dal tam. 567 00:24:52,116 --> 00:24:53,740 To je že na videu nekaj let nazaj. 568 00:24:53,740 --> 00:24:56,810 Torej boste kmalu me vidiš pisati za zanke, pri čemer 569 00:24:56,810 --> 00:25:00,640 to je zelo enostavno napisati napako v tem, da zanko, tako da prvič 570 00:25:00,640 --> 00:25:02,800 skozi zanko, si pošljete eno sporočilo. 571 00:25:02,800 --> 00:25:06,190 >> Drugič skozi zanko I bi moral poslal še eno sporočilo, 572 00:25:06,190 --> 00:25:08,250 in nato še eno besedilo sporočilo, in še ena. 573 00:25:08,250 --> 00:25:11,490 Vendar se izkaže, če naredite tipkarsko pri načrtovanju, včasih 574 00:25:11,490 --> 00:25:14,460 Lahko napišete programe, ki pošiljajo enega besedilno sporočilo, nato pa dva besedilna sporočila, 575 00:25:14,460 --> 00:25:18,742 nato tri besedilna sporočila vsakogar ki je že prejel sporočilo. 576 00:25:18,742 --> 00:25:21,450 In kot veste, delaš nekaj, plus nekaj, plus nekaj, 577 00:25:21,450 --> 00:25:25,910 plus nekaj, je velik O lota besedilnih sporočil ali n kvadrat, 578 00:25:25,910 --> 00:25:29,830 ali na 0,10 $ besedilno sporočilo, 20.000 $. 579 00:25:29,830 --> 00:25:33,700 >> K sreči sem udaril Control + C, pred tem se je zgodilo, vendar nisem dolžan vsaj eno 580 00:25:33,700 --> 00:25:37,550 vaših predhodnikov 20 $ za 200 nekaj čudno besedilna sporočila, 581 00:25:37,550 --> 00:25:40,450 ni šlo le za njegovo telefonom, vendar Prav tako je bilo všeč starejši flip telefon 582 00:25:40,450 --> 00:25:43,520 zato je želel izrinjena njegov spomin vsak drugi osebni besedilo 583 00:25:43,520 --> 00:25:45,930 sporočilo ga je dejansko prišel. 584 00:25:45,930 --> 00:25:49,250 Torej imamo en cilj danes, ne za to. 585 00:25:49,250 --> 00:25:50,620 Mogoče vklopite letalski način. 586 00:25:50,620 --> 00:25:51,120 V redu. 587 00:25:51,120 --> 00:25:56,590 Torej, kaj je šel v Program tukaj callled-- 588 00:25:56,590 --> 00:25:59,060 da bom poklical besedila pika PHP. 589 00:25:59,060 --> 00:26:01,074 In vnaprej, imam dve datoteki tukaj. 590 00:26:01,074 --> 00:26:06,030 Naredil sem datoteko za samo osebje, ki je dobil vse info na zaposlenega, vsa imena 591 00:26:06,030 --> 00:26:07,260 na spletni strani predmeta je. 592 00:26:07,260 --> 00:26:09,756 In potem za zdaj sem dal nekateri ponarejene številke 555-1212. 593 00:26:09,756 --> 00:26:11,380 Torej ti ne bi dejansko šel nikamor. 594 00:26:11,380 --> 00:26:15,140 Ampak obvestilo notranjost te datoteke CSV katero smo se pogovarjali o tem na kratko, preden 595 00:26:15,140 --> 00:26:16,540 v okviru datoteke IO. 596 00:26:16,540 --> 00:26:18,730 >> Kaj je datoteka CSV? 597 00:26:18,730 --> 00:26:19,970 Ločene z vejico spremenljivk. 598 00:26:19,970 --> 00:26:24,400 In to je nekako kot zelo lahek baze podatkov, če hočete. 599 00:26:24,400 --> 00:26:28,650 Tam je nekako nekako štiri stolpce v tej datoteki, in tam nazobčane, 600 00:26:28,650 --> 00:26:32,400 ampak vejice bistvu predstavljajo stolpce v spisu. 601 00:26:32,400 --> 00:26:35,400 V prvem stolpcu je TF ali ime CA. 602 00:26:35,400 --> 00:26:37,800 Drugi stolpec je njihov priimek. 603 00:26:37,800 --> 00:26:39,820 Tretji steber je njihova telefonska številka. 604 00:26:39,820 --> 00:26:44,760 In četrti stolpec očitno is-- Četrti stolpec je očitno, kaj? 605 00:26:44,760 --> 00:26:45,870 OK, tako da je njihov nosilec. 606 00:26:45,870 --> 00:26:47,180 Torej, Verizon, ali Sprint, ali kaj ne. 607 00:26:47,180 --> 00:26:48,620 In če sem misspoke prej, CSV. 608 00:26:48,620 --> 00:26:51,800 Vejico ločene vrednosti je CSV tukaj. 609 00:26:51,800 --> 00:26:54,260 >> Torej, kaj lahko naredim s tem? 610 00:26:54,260 --> 00:26:56,940 No to je samo velik besedilna datoteka, in to je vrsta dolga, kajne? 611 00:26:56,940 --> 00:26:58,690 Tako kot se to dogaja, da biti nekako nadležno. 612 00:26:58,690 --> 00:27:03,510 In se je izkazalo, čeprav je, da če sem želite poslati besedilno sporočilo, dajmo 613 00:27:03,510 --> 00:27:05,180 pravijo, Alex tukaj. 614 00:27:05,180 --> 00:27:09,690 Naj gredo v mojem brskalniku in izhod iz celozaslonskega načina 615 00:27:09,690 --> 00:27:11,660 samo zato, da sem lahko preklapljate naprej in nazaj. 616 00:27:11,660 --> 00:27:20,280 Izkazalo se je, da vidimo, če grem v tukaj in se prijavite v Gmail, vse pravice. 617 00:27:20,280 --> 00:27:22,950 Ne poglej tem delu. 618 00:27:22,950 --> 00:27:23,880 Pravkar sem dobil videti. 619 00:27:23,880 --> 00:27:26,551 620 00:27:26,551 --> 00:27:28,800 seveda livestream lahko Še vedno vidim kaj delam. 621 00:27:28,800 --> 00:27:29,360 V redu. 622 00:27:29,360 --> 00:27:31,850 >> Torej, tukaj je samo Gmail z Račun John Harvard. 623 00:27:31,850 --> 00:27:34,000 Torej, če želim poslati besedilna sporočila, da Alex, 624 00:27:34,000 --> 00:27:35,530 Lahko seveda sestavite sporočilo. 625 00:27:35,530 --> 00:27:38,410 In se je izkazalo, in sem preizkušen z Alexom prej tukaj, 626 00:27:38,410 --> 00:27:42,260 tako da lahko dodate neko domeno ime za telefonske številke ljudi, 627 00:27:42,260 --> 00:27:45,850 ker obstaja v svetu Stvari imenovana SMS email prehode. 628 00:27:45,850 --> 00:27:50,000 Ki je fancy način rekel vse od nas, ki imajo mobilne telefone, 629 00:27:50,000 --> 00:27:53,200 imajo telefonske številke, seveda, Verjetno je za svojega operaterja, 630 00:27:53,200 --> 00:27:56,840 neka pripona, kot na Vtext.com za Verizon besedilnega sporočila 631 00:27:56,840 --> 00:28:00,320 dot com, da lahko dodate na vaš osebno telefonsko številko, in nato 632 00:28:00,320 --> 00:28:03,540 vi ali prijatelji, ali pa tvoji starši lahko vas besedilo na tistem naslovu. 633 00:28:03,540 --> 00:28:07,380 >> In Verizon ima strežnik, e-mail: Strežnik, da po prejemu tega sporočila, 634 00:28:07,380 --> 00:28:11,180 gleda na številski del in nato uporablja ne glede na posebno industrije čarovnijo 635 00:28:11,180 --> 00:28:14,540 so ga dejansko poslali čez Airwaves na vaš določeno celico 636 00:28:14,540 --> 00:28:15,040 telefon. 637 00:28:15,040 --> 00:28:18,030 Zdaj je to lepo, ker jaz ne Res veste, kako poslati besedilno sporočilo 638 00:28:18,030 --> 00:28:20,460 ali napisati kodo, še za moj mobilni telefon, 639 00:28:20,460 --> 00:28:23,580 in morda naredil točno to, za končni projekt, ampak za zdaj vse 640 00:28:23,580 --> 00:28:24,770 Imam je moj laptop tukaj. 641 00:28:24,770 --> 00:28:29,830 Torej, želim ponoviti nad to CSV Datoteka, linije, ki jih skladno s črto, po liniji, 642 00:28:29,830 --> 00:28:35,160 zgrabi vsako od telefonskih številk osebja, je, in njihov nosilec in programatically, 643 00:28:35,160 --> 00:28:39,770 združevanje, torej povezati telefon Številka z ustreznim imenom domene 644 00:28:39,770 --> 00:28:40,820 nato pa pošljite email. 645 00:28:40,820 --> 00:28:41,940 >> Tako, da je veliko korakov. 646 00:28:41,940 --> 00:28:45,530 In srečno početje, ki v C. To je nočna mora za razmere 647 00:28:45,530 --> 00:28:48,350 Če želite odpreti datoteko, da ga preberete linija, ki jo skladno z linijo, kot vas 648 00:28:48,350 --> 00:28:51,100 so videli, ali lahko kmalu videli s problemom nastavite pet, če ne 649 00:28:51,100 --> 00:28:53,560 Problem je določeno štiri, in nato dinamično združevanje 650 00:28:53,560 --> 00:28:57,020 dve strune skupaj, ker v C, vzeti dveh nizov in jih združiti, 651 00:28:57,020 --> 00:29:00,900 kaj ti je naredil minimalno morate storiti najverjetneje? 652 00:29:00,900 --> 00:29:03,020 Morate razglasi več pomnilnika, kajne? 653 00:29:03,020 --> 00:29:04,710 In vprašati, malloc, lahko imam več pomnilnika? 654 00:29:04,710 --> 00:29:07,060 Tako sem lahko dal polovico od tega tod polovica tega tukaj. 655 00:29:07,060 --> 00:29:08,150 To je tako veliko korakov. 656 00:29:08,150 --> 00:29:10,310 In v tej točki ste izgubili Zanimanje za neumno malo demo 657 00:29:10,310 --> 00:29:11,851 kjer si bo vsakogar telefon piska. 658 00:29:11,851 --> 00:29:14,590 Naredimo to vrsto PHP slog, s katerim smo se pravkar 659 00:29:14,590 --> 00:29:16,210 začeti uporabljati bolj te pomivalno korito. 660 00:29:16,210 --> 00:29:18,050 >> In ideje so v osnovi enaka, 661 00:29:18,050 --> 00:29:20,710 vendar mi ne bo treba skrbeti preveč toliko o tej nižji ravni. 662 00:29:20,710 --> 00:29:22,950 Torej, poglejmo, kako se bom morda iti o tem. 663 00:29:22,950 --> 00:29:26,664 In samo zato, da mi ni ponoviti preteklih napak, 664 00:29:26,664 --> 00:29:28,330 Napisal sem nekaj zapiskov za sebe tukaj. 665 00:29:28,330 --> 00:29:31,070 In kaj vidimo, če nam lahko hodim skozi nekaj osnovnih korakov, 666 00:29:31,070 --> 00:29:33,861 in nato zavoljo časov bomo morda zmanjšati nekatere kotičke na koncu. 667 00:29:33,861 --> 00:29:38,007 Grem, da gredo naprej in narediti odprto nosilec PHP za začetek te datoteke. 668 00:29:38,007 --> 00:29:39,590 In bom, da gredo naprej in to storite. 669 00:29:39,590 --> 00:29:41,490 Datoteka ročaj, kot boste kmalu videli, dejansko 670 00:29:41,490 --> 00:29:44,790 poziva funkcijo imenovano f odprta. 671 00:29:44,790 --> 00:29:46,280 In ne pozabite, to odpre datoteko. 672 00:29:46,280 --> 00:29:48,800 In citiram, konec citata, r pomeni kaj, še enkrat? 673 00:29:48,800 --> 00:29:49,800 Samo odpreti za branje. 674 00:29:49,800 --> 00:29:51,210 Zdaj v p niz za, si to naredil. 675 00:29:51,210 --> 00:29:54,500 In ročaj je lahko karkoli, fu, bar, bas, katerokoli ime spremenljivke. 676 00:29:54,500 --> 00:29:57,470 Vendar na splošno računalnik znanstvenik bi rekel odprto datoteko, 677 00:29:57,470 --> 00:30:00,962 vam daje ročko datoteke, nekaj, da imajo na tako rekoč. 678 00:30:00,962 --> 00:30:02,670 Jaz sem le, da bo naredil nekateri preverjanje napak. 679 00:30:02,670 --> 00:30:07,260 Torej, če je ročaj false, samo rad v C, bom naredil nekaj podobnega, 680 00:30:07,260 --> 00:30:09,545 ni mogel odpreti datoteke, poševnica nazaj n. 681 00:30:09,545 --> 00:30:11,420 In potem sem šele tekoč da gredo naprej in izhod. 682 00:30:11,420 --> 00:30:14,340 In se je izkazalo, PHP, Nisem znotraj funkcije. 683 00:30:14,340 --> 00:30:16,160 Ni glavna funkcija tukaj. 684 00:30:16,160 --> 00:30:17,450 Torej, jaz ne vrnejo, per se. 685 00:30:17,450 --> 00:30:18,120 I izhod. 686 00:30:18,120 --> 00:30:19,619 Ki je v bistvu ista stvar. 687 00:30:19,619 --> 00:30:22,510 In jaz sem izhodu z eno y verjetno. 688 00:30:22,510 --> 00:30:24,220 Eno samo pomeni napako neke vrste. 689 00:30:24,220 --> 00:30:25,580 To ni nič, tako da je prišlo do napake. 690 00:30:25,580 --> 00:30:30,220 >> Vse je v redu, tako da, če sem tukaj zdaj V mojem programu sem odprl datoteko. 691 00:30:30,220 --> 00:30:34,250 Grem, da gredo naprej in razglaša matrika se imenuje naslovi, 692 00:30:34,250 --> 00:30:38,610 in C bi jaz moral vedeti velikost matrike vnaprej, kajne? 693 00:30:38,610 --> 00:30:41,910 Ali bi morali to prijaviti je kazalec, in nato uporabite malloc. 694 00:30:41,910 --> 00:30:44,720 In potem vsakič, ko sem prebral skozi drugo vrstico v datoteki, 695 00:30:44,720 --> 00:30:46,620 Bom morali malloc več pomnilnika, malloc več pomnilnika. 696 00:30:46,620 --> 00:30:47,703 Da je bolečina v vratu. 697 00:30:47,703 --> 00:30:50,950 In na srečo, PHP in Ruby, in Python in JavaScript, ki jih 698 00:30:50,950 --> 00:30:53,880 se bo povečalo vaše nize za vas samodejno. 699 00:30:53,880 --> 00:30:54,830 Nič več malloc. 700 00:30:54,830 --> 00:30:56,227 Nič več upravljanje pomnilnika. 701 00:30:56,227 --> 00:30:57,560 Računalnik skrbi za to. 702 00:30:57,560 --> 00:31:00,330 Toda cena, ki jo plačate. 703 00:31:00,330 --> 00:31:01,350 To je malo počasneje. 704 00:31:01,350 --> 00:31:03,190 In za program, kot je ta ne bomo opazili. 705 00:31:03,190 --> 00:31:04,720 Bomo poslali 100 besedilnih sporočil. 706 00:31:04,720 --> 00:31:06,136 Na primer ne bo čutiti. 707 00:31:06,136 --> 00:31:08,430 IT zares začne šele na važno vašem jeziku izbire 708 00:31:08,430 --> 00:31:11,490 če vaši podatki ali vaši programi zares, zares precejšen, 709 00:31:11,490 --> 00:31:14,120 saj bo tako bolj z našo spletno stvari. 710 00:31:14,120 --> 00:31:15,450 >> Ampak za zdaj, kaj je korak naprej. 711 00:31:15,450 --> 00:31:20,120 Medtem ko se je izkazalo, da je funkcija v C se imenuje f dobili CSV. 712 00:31:20,120 --> 00:31:24,570 Datoteka dobili CSV, ki traja datoteko ročaj kot svoj argument, 713 00:31:24,570 --> 00:31:28,810 in nadaljuje potem, vrstico, ki jo vrstica z vrstico, ki se glasi v vrstico. 714 00:31:28,810 --> 00:31:30,964 Tako da samo bere črto besedila iz datoteke. 715 00:31:30,964 --> 00:31:34,130 Toda kaj je lepo o tej funkciji, ne samo podaj mi vrstico besedila. 716 00:31:34,130 --> 00:31:37,320 Videti je za tiste vejicami, in razčleni linijo. 717 00:31:37,320 --> 00:31:41,740 In razčleniti črto pomeni, da se razdeli je na določenih vrednotah v tem kontekstu. 718 00:31:41,740 --> 00:31:45,510 >> Z drugimi besedami, znak za dolar vrstica je spremenljivka, ki je 719 00:31:45,510 --> 00:31:47,010 dogaja, da mi kup indeksov. 720 00:31:47,010 --> 00:31:49,635 To se dogaja, da je Prvi stolpec v mojem CSV. 721 00:31:49,635 --> 00:31:52,510 To se dogaja, da je druga stolpec, to se bo tretji, 722 00:31:52,510 --> 00:31:53,968 in to se bo četrta. 723 00:31:53,968 --> 00:31:57,440 Ker odpoklica in Excel ne sodelujejo zadnjič, ko smo to naredili, 724 00:31:57,440 --> 00:32:03,350 ampak če sem prenesete osebje dot CSV. 725 00:32:03,350 --> 00:32:04,940 Ops, ne preimenovati. 726 00:32:04,940 --> 00:32:09,120 Če bi prenos piko osebja CSV, in poskusite odpiranje, 727 00:32:09,120 --> 00:32:12,510 Sem že registered-- oh I ni posodobiti Excel od zadnjega obiska. 728 00:32:12,510 --> 00:32:15,880 Videli boste, da je v piko osebja CSV, imam štiri stolpce. 729 00:32:15,880 --> 00:32:18,720 Torej, ko sem prebral v Prva vrstica za Abby tukaj, 730 00:32:18,720 --> 00:32:23,582 znak za dolar row 0 je Abby, znak za dolar vrstica je ena Lyons, 731 00:32:23,582 --> 00:32:27,740 znak za dolar vrstica dva je njena številka, in nato nosilec svojega telefona. 732 00:32:27,740 --> 00:32:28,410 >> Torej, to je vse. 733 00:32:28,410 --> 00:32:30,740 In to je lepo, ker sem ne bi bilo treba zdaj ugotoviti, 734 00:32:30,740 --> 00:32:32,800 kje dejansko so vse te vejicami. 735 00:32:32,800 --> 00:32:35,300 Tako da sem šel naprej in To storite tako, glede na to, da je definicija, 736 00:32:35,300 --> 00:32:38,960 Jaz bom rekel, da je njeno ime v vrstici nosilec nič, kot je obljubil. 737 00:32:38,960 --> 00:32:41,150 In bom grab-- in pravzaprav, veste kaj? 738 00:32:41,150 --> 00:32:42,780 Ne bom skrbeti njeno ime, v tem primeru. 739 00:32:42,780 --> 00:32:43,988 Grem, da je preprostejša. 740 00:32:43,988 --> 00:32:48,610 Bom naredil njena številka v vrstici nosilec dveh, mislim. 741 00:32:48,610 --> 00:32:50,510 In njen nosilec je bil kje? 742 00:32:50,510 --> 00:32:53,405 Vrstica tri, ena več. 743 00:32:53,405 --> 00:32:54,280 Torej, nič novega ni. 744 00:32:54,280 --> 00:32:56,770 To je samo nič indeksiranje v array. 745 00:32:56,770 --> 00:32:58,760 >> In zdaj, bom storiti naslednje. 746 00:32:58,760 --> 00:33:03,930 Če prevoznik enaka enaka AT & T-- Jaz sem samo dogaja, da imajo loop-- 747 00:33:03,930 --> 00:33:06,790 Želim ustvariti e-poštno sporočilo naslov, ki izgleda takole. 748 00:33:06,790 --> 00:33:12,320 To se dogaja, da je 617-555-1212 na, kaj je to, text.ATT.net, 749 00:33:12,320 --> 00:33:13,490 je tisto, kar želim storiti. 750 00:33:13,490 --> 00:33:15,260 Torej, kako naj to storim? 751 00:33:15,260 --> 00:33:16,730 Bom naredil naslednje. 752 00:33:16,730 --> 00:33:22,460 Njen naslov se bo njena številka, in zdaj, naj gredo naprej in to storite. 753 00:33:22,460 --> 00:33:23,760 To je nekaj funky sintaksa. 754 00:33:23,760 --> 00:33:27,250 Jaz bi naredil odstotkov e trik, vendar sem lahko dejansko samo to. 755 00:33:27,250 --> 00:33:29,900 >> Torej je to PHP stvar, vendar kaj menijo, kaj delam. 756 00:33:29,900 --> 00:33:31,630 Dolarjev podpisal naslov na levo, samo spremenljivka. 757 00:33:31,630 --> 00:33:32,300 Daj mi spremenljivko. 758 00:33:32,300 --> 00:33:33,390 Nimam določiti vrsto. 759 00:33:33,390 --> 00:33:34,570 PHP bo pogruntal. 760 00:33:34,570 --> 00:33:36,580 Na desni strani, kaj je podatkovni tip 761 00:33:36,580 --> 00:33:38,399 te vso stvar na desna stran pa? 762 00:33:38,399 --> 00:33:40,190 Izgleda niz, zato, ker je dvojna 763 00:33:40,190 --> 00:33:42,280 navaja na skrajni levi in ​​skrajni desni. 764 00:33:42,280 --> 00:33:44,210 Zdaj obstaja nekaj funky novo sintakso tukaj. 765 00:33:44,210 --> 00:33:47,550 Tam so zaviti oklepaji, in število znak za dolar. 766 00:33:47,550 --> 00:33:52,860 Vendar traja ugibati, kaj je, da skladnja verjetno povedal PHP storiti zame? 767 00:33:52,860 --> 00:33:53,360 Ja. 768 00:33:53,360 --> 00:33:54,630 Samo vstavite vrednost tam. 769 00:33:54,630 --> 00:33:55,530 Torej ni odstotkov y. 770 00:33:55,530 --> 00:33:58,160 Mi lahko uporabite za tiskanje F ali s print f ali kaj podobnega, 771 00:33:58,160 --> 00:34:00,070 vendar PHP in veliko višje jeziki ravni, 772 00:34:00,070 --> 00:34:03,070 boste videli, da si lahko storijo enako stvar funkcionalno, morda 773 00:34:03,070 --> 00:34:04,019 šest različnih načinov. 774 00:34:04,019 --> 00:34:06,310 In tako se začne, da postane stvar oblikovanja ali slog. 775 00:34:06,310 --> 00:34:09,902 Torej je to samo Grobni išče pot rekel, daj mi e-poštni naslov, 776 00:34:09,902 --> 00:34:12,110 vendar plug-številom v med temi zavitimi oklepaji. 777 00:34:12,110 --> 00:34:15,440 In zaviti oklepaji ne bo končajo v končnem naslovu. 778 00:34:15,440 --> 00:34:18,010 >> Sedaj lahko preskočite čez nekaj Te vrstice so zaradi časov. 779 00:34:18,010 --> 00:34:21,210 Torej, če prevoznik enaka enaka verHorizon-- Ops, 780 00:34:21,210 --> 00:34:24,989 Verizon-- želim nekaj narediti zelo podoben, pri čemer je naslov dobi, 781 00:34:24,989 --> 00:34:27,569 citiram, konec citata, število na text.ATT.net. 782 00:34:27,569 --> 00:34:30,380 783 00:34:30,380 --> 00:34:35,050 In potem sem lahko naredil isto vrsto stvar za ostale prevoznike. 784 00:34:35,050 --> 00:34:37,090 Ampak bom naredil dot, dot, dot za zdaj. 785 00:34:37,090 --> 00:34:43,050 In zdaj pa si domnevati, da Želim dodati matriko, potiskanje. 786 00:34:43,050 --> 00:34:45,969 Želim dodati k Niz, ki se imenuje naslove. 787 00:34:45,969 --> 00:34:50,409 >> Ta naslov, to je, kako vas dodamo nekaj array v PHP. 788 00:34:50,409 --> 00:34:51,610 Vam ni treba storiti malloc. 789 00:34:51,610 --> 00:34:53,068 Nimate, da spremenite velikost array. 790 00:34:53,068 --> 00:34:54,259 Pravkar ste rekli matrika, potiskanje. 791 00:34:54,259 --> 00:34:57,300 Kaj želite push-- kaj matrično hočeš push nekaj na? 792 00:34:57,300 --> 00:34:58,000 Naslovi. 793 00:34:58,000 --> 00:34:59,550 Kaj želite nataknite naslove? 794 00:34:59,550 --> 00:35:00,350 Naslov. 795 00:35:00,350 --> 00:35:02,430 In v resnici, če vas hočeš biti pameten, 796 00:35:02,430 --> 00:35:05,610 nekateri skladenjska sladkor za to, tako rekoč 797 00:35:05,610 --> 00:35:10,230 ki samo pomeni, kako lahko to storite v lepši način, bi bilo, da to storijo. 798 00:35:10,230 --> 00:35:14,060 Tudi to ima za posledico narašča naslove matrika po velikosti ena, 799 00:35:14,060 --> 00:35:17,130 in potem Pasti, ki dodatno E-poštni naslov vanjo. 800 00:35:17,130 --> 00:35:17,630 Ja. 801 00:35:17,630 --> 00:35:19,730 >> OBČINSTVO: [neslišno] 802 00:35:19,730 --> 00:35:22,520 >> SPEAKER 1: slovnične napake na drugega if-- oh, prevoznika. 803 00:35:22,520 --> 00:35:23,070 To je ok. 804 00:35:23,070 --> 00:35:26,971 Prav tako ne bo všeč moj neuspeh pri izvajanje del tega programa 805 00:35:26,971 --> 00:35:27,470 kasneje. 806 00:35:27,470 --> 00:35:28,810 Ampak hvala za lov. 807 00:35:28,810 --> 00:35:30,671 Ena bolj bug. 808 00:35:30,671 --> 00:35:31,170 Hvala. 809 00:35:31,170 --> 00:35:33,746 Želimo, da je to Vtext.com. 810 00:35:33,746 --> 00:35:34,340 Da. 811 00:35:34,340 --> 00:35:34,839 V redu. 812 00:35:34,839 --> 00:35:36,330 Torej, če nam to pusti? 813 00:35:36,330 --> 00:35:38,224 Mi smo pisno kodo, da odprete datoteko. 814 00:35:38,224 --> 00:35:40,390 Imamo zanko Ponovil več vrstic v datoteki. 815 00:35:40,390 --> 00:35:43,650 Imamo kodo, ki dodaja, da moj matrika, eden naenkrat je pravilno 816 00:35:43,650 --> 00:35:44,790 oblikovano e-poštni naslov. 817 00:35:44,790 --> 00:35:48,480 Torej, vse to res ostane je, da pošljete email, da vsak od teh ljudi. 818 00:35:48,480 --> 00:35:52,830 >> Tako sem šel naprej in sam readied kot sledi. 819 00:35:52,830 --> 00:35:59,580 Kaj bom naredil tukaj is-- in dovolimo, iti naprej in preskočite do neke dejanske kode, 820 00:35:59,580 --> 00:36:00,620 ki je videti takole. 821 00:36:00,620 --> 00:36:02,950 Torej, tukaj je pre-pečen Različica sem napisal prej. 822 00:36:02,950 --> 00:36:04,700 In opazila sem končal izvajanje Sprint. 823 00:36:04,700 --> 00:36:06,130 Končal sem izvedbenih T-Mobile. 824 00:36:06,130 --> 00:36:08,020 Končal sem izvedbenih Virgin Mobile. 825 00:36:08,020 --> 00:36:09,622 In bom vnaprej opravičujemo. 826 00:36:09,622 --> 00:36:12,080 Obstaja nekaj prevoznikov, ki nekateri učenci v razredu imajo 827 00:36:12,080 --> 00:36:14,640 da mi ni motilo naštevanjem v if stanju tukaj. 828 00:36:14,640 --> 00:36:16,015 Torej ne bodo vsa besedila iti ven. 829 00:36:16,015 --> 00:36:17,556 Ampak poglejmo, kaj moram narediti. 830 00:36:17,556 --> 00:36:19,660 Zaprem datoteko, samo kot v p nastavite štiri. 831 00:36:19,660 --> 00:36:20,835 >> In to je nova skladnja. 832 00:36:20,835 --> 00:36:22,710 In bomo videli malo malo to sčasoma 833 00:36:22,710 --> 00:36:24,450 predvsem s p nastavite sedem in osem. 834 00:36:24,450 --> 00:36:28,140 Toda to je sintaksa za ustvarjanje posebna vrsta strukture. 835 00:36:28,140 --> 00:36:31,490 Izkazalo se je, da je knjižnica, ki prihaja z PHP, ki se imenuje PHP mailer. 836 00:36:31,490 --> 00:36:33,840 Njen namen v življenju je, da programsko pošljete e-pošto. 837 00:36:33,840 --> 00:36:36,840 To je koda nekdo zapisal, da je omogoča lažje za nas, da pošljete e-pošto, 838 00:36:36,840 --> 00:36:39,131 tako da ne bi bilo treba ohraniti gredo naprej in nazaj na Gmailu 839 00:36:39,131 --> 00:36:41,151 in prilepite v e-poštne naslove ljudi. 840 00:36:41,151 --> 00:36:44,150 Obstaja cel kup linij tukaj da je pošteno, sem nekako kopirajo 841 00:36:44,150 --> 00:36:45,660 in prilepili iz dokumentacije. 842 00:36:45,660 --> 00:36:47,409 In v resnici, če ste radoveden, sem pustil vse 843 00:36:47,409 --> 00:36:50,550 URL-jev dokumentacije v kodeksu, ki ga bomo objavili kasneje. 844 00:36:50,550 --> 00:36:52,360 In opazil, da je med stvari, ki jih delam 845 00:36:52,360 --> 00:36:55,710 je, sem povedal to knjižnico, uporabljati Gmail strežnik, kajne? 846 00:36:55,710 --> 00:36:59,360 SMTP smo se pogovarjali na kratko o tem, ko smo so bili na univerzi Yale o tem, da enostavno mail 847 00:36:59,360 --> 00:37:00,110 Prenos protokol. 848 00:37:00,110 --> 00:37:02,920 To je protokol, ki strežniki, ki se uporabljajo za pošiljanje e-pošte, 849 00:37:02,920 --> 00:37:05,150 in that's-- Gmail ima eno od teh. 850 00:37:05,150 --> 00:37:07,290 Vrata, to je število TCP port. 851 00:37:07,290 --> 00:37:09,630 To je v redu, če vas niso videli 587 prej. 852 00:37:09,630 --> 00:37:11,420 Samo vem, da je iz dokumentacije. 853 00:37:11,420 --> 00:37:12,250 Tukaj je moje uporabniško ime. 854 00:37:12,250 --> 00:37:13,670 Bom uporabite CF50 bot. 855 00:37:13,670 --> 00:37:16,690 In v trenutku, sem le, da bo tip v bot dejanskega geslom. 856 00:37:16,690 --> 00:37:18,690 In potem sem dol, opazili kaj ostane. 857 00:37:18,690 --> 00:37:22,840 >> Nastavim iz naslova se bot na CS50.net. 858 00:37:22,840 --> 00:37:26,240 Mislim, da žal ne bo posredovala besedilna sporočila, da 800 ljudi, 859 00:37:26,240 --> 00:37:30,590 pravi, pogrešam te, ljubezen CS50 bot, morda za tiste, ki niso mogli priti danes. 860 00:37:30,590 --> 00:37:33,160 In nato v vrstici 76, kaj naj storim? 861 00:37:33,160 --> 00:37:39,010 Ta vrsta izgleda kot C. Torej za i enak 0, n equals-- zdaj računajo, je nova. 862 00:37:39,010 --> 00:37:42,077 Izkazalo se je, da če hočeš priti število stvari v matriki, 863 00:37:42,077 --> 00:37:43,660 vam ni treba več zapomniti. 864 00:37:43,660 --> 00:37:45,370 Lahko samo vprašati Funkcija se imenuje Fortuna 865 00:37:45,370 --> 00:37:48,320 in to vam bo povedal, koliko Naslovi so v tem polju. 866 00:37:48,320 --> 00:37:53,210 >> In potem bom dodati naslov, e-pošte. 867 00:37:53,210 --> 00:37:55,090 In jaz to vem, od z dokumentacijo. 868 00:37:55,090 --> 00:37:56,900 Tam je funkcija dodatek naslov. 869 00:37:56,900 --> 00:37:58,980 In zdaj opazili tam je en kos sintakse. 870 00:37:58,980 --> 00:38:01,470 Videli smo že prej v C. Podobno kot v duhu. 871 00:38:01,470 --> 00:38:04,100 Si lahko zamislite znak za dolar mail kot spremenljivko, ki ga je. 872 00:38:04,100 --> 00:38:08,100 Ampak to je struct notranjosti ki niso le lastnosti, 873 00:38:08,100 --> 00:38:09,400 spremenljivke, če boste. 874 00:38:09,400 --> 00:38:13,480 Vendar se izkaže, da je v PHP, ki je objektno programiranje 875 00:38:13,480 --> 00:38:16,520 jezik, kot so Java, če je APC. 876 00:38:16,520 --> 00:38:21,420 >> Znak za dolar mail, če želite to-- ima tudi funkcije znotraj njega, 877 00:38:21,420 --> 00:38:22,380 ali metode. 878 00:38:22,380 --> 00:38:24,720 Torej, to se pravi, da Posebna PHP mailer 879 00:38:24,720 --> 00:38:29,280 knjižnica, če imam njihove spremenljivke, če želim poklicati funkcijo, 880 00:38:29,280 --> 00:38:31,559 prihaja s to knjižnico, za današnje namene, 881 00:38:31,559 --> 00:38:33,100 samo vem, da uporabite puščico zapis. 882 00:38:33,100 --> 00:38:34,150 Ni dot zapis. 883 00:38:34,150 --> 00:38:35,220 To je samo puščica. 884 00:38:35,220 --> 00:38:36,380 Ampak to ni kazalec. 885 00:38:36,380 --> 00:38:38,680 To je samo sposodil od sintakse C je. 886 00:38:38,680 --> 00:38:43,620 Torej pokličite dodajte naslov notranjosti Ta knjižnica je predmet ali spremenljiva. 887 00:38:43,620 --> 00:38:44,440 >> V redu. 888 00:38:44,440 --> 00:38:45,570 To je čaroben črta. 889 00:38:45,570 --> 00:38:46,740 To je, kako sem pošljite e-pošto. 890 00:38:46,740 --> 00:38:50,040 To je enako odpiranju Gmail, da ga vnesete ven in hitting poslati. 891 00:38:50,040 --> 00:38:54,870 Ampak to se dogaja, da namesto pošljite email na ta naslov, s tem telesu, 892 00:38:54,870 --> 00:38:57,120 od CS50 bot. 893 00:38:57,120 --> 00:38:58,710 In zdaj ključni linijo. 894 00:38:58,710 --> 00:39:03,130 Ta linija je bila odsotna v kot 2011 ko mislim, da sem nazadnje to poskušal. 895 00:39:03,130 --> 00:39:05,640 Ta linija je seveda počisti naslove. 896 00:39:05,640 --> 00:39:07,920 Torej je logično, če I ne počistite naslov 897 00:39:07,920 --> 00:39:11,740 Po vsaki ponovitvi se prvi po e-pošti ali besedilno sporočilo gre v Alice, 898 00:39:11,740 --> 00:39:14,320 Drugi gre Alice in Bob, tretji 899 00:39:14,320 --> 00:39:17,870 gre za Alice in Bob in Charlie, zato je zelo drago napako 900 00:39:17,870 --> 00:39:18,760 Naredil sem tisto leto. 901 00:39:18,760 --> 00:39:21,080 >> Torej, poglejmo. 902 00:39:21,080 --> 00:39:24,200 Ali obstajajo vprašanja preden smo vam poslali vse besedilo 903 00:39:24,200 --> 00:39:28,210 sporočilo z 10-odstotno verjetnostjo? 904 00:39:28,210 --> 00:39:28,940 Kakšno vprašanje? 905 00:39:28,940 --> 00:39:30,330 V redu. 906 00:39:30,330 --> 00:39:36,100 Naj grem v tukaj in sprememba geslo, da tisto, kar bi morali delati, 907 00:39:36,100 --> 00:39:37,780 bo verjetno dobil črni listi, ki jo Gmail. 908 00:39:37,780 --> 00:39:39,821 Torej, morda niso šli vsi ven, saj verjetno 909 00:39:39,821 --> 00:39:42,960 pa nam ni všeč, poslala 800 e-pošte V za zanke naenkrat. 910 00:39:42,960 --> 00:39:45,140 Ker to ni predvsem človeško vedenje. 911 00:39:45,140 --> 00:39:47,460 >> Oh, jaz grem, da spremenite eno drugo stvar. 912 00:39:47,460 --> 00:39:50,850 Na vrhu, bom sent-- spremenite datoteko študente dot CSV. 913 00:39:50,850 --> 00:39:55,420 In ne bom odprl, vendar je to identična datoteka CSV z ne 100 uslužbencev, 914 00:39:55,420 --> 00:39:58,970 pa 800 študentov, samo na Harvardu, ker Yale 915 00:39:58,970 --> 00:40:00,207 ima vdolbino oktober ta teden. 916 00:40:00,207 --> 00:40:03,290 In zdi se, kot nekakšen kreten stvar storiti, da besedilo, vse od njih, zakaj 917 00:40:03,290 --> 00:40:04,750 oni ne v razredu na počitnicah. 918 00:40:04,750 --> 00:40:05,250 To je ok. 919 00:40:05,250 --> 00:40:08,310 Samo Harvard študenti danes znotraj te datoteke. 920 00:40:08,310 --> 00:40:12,320 In zdaj se vrnimo na mojo terminalsko okno. 921 00:40:12,320 --> 00:40:13,710 Jaz sem nekako nervozen. 922 00:40:13,710 --> 00:40:22,000 >> OK, tako da zdaj bom šel v imenik, in PHP besedilo dot PHP. 923 00:40:22,000 --> 00:40:24,950 Kako približno en pogumen prostovoljec? 924 00:40:24,950 --> 00:40:26,690 Torej, ne želim, to na mene. 925 00:40:26,690 --> 00:40:28,410 OK, pridi gor. 926 00:40:28,410 --> 00:40:29,162 Kako ti je ime? 927 00:40:29,162 --> 00:40:29,662 MAYA: Maya. 928 00:40:29,662 --> 00:40:30,328 SPEAKER 1: Maya. 929 00:40:30,328 --> 00:40:31,610 Pridi gor, Maya. 930 00:40:31,610 --> 00:40:34,120 V redu. 931 00:40:34,120 --> 00:40:35,389 Poglejmo, če to deluje. 932 00:40:35,389 --> 00:40:38,430 Sem dal svoj e-poštni naslov v file-- svojo telefonsko številko v datoteki, 933 00:40:38,430 --> 00:40:40,110 tako da upam, da bom dobil enega, kot dobro. 934 00:40:40,110 --> 00:40:40,819 Me veseli. 935 00:40:40,819 --> 00:40:41,443 MAYA: Prav. 936 00:40:41,443 --> 00:40:44,510 SPEAKER 1: Torej, vse, kar morate storiti je, pritisnite tipko Enter, da pošljete 800 besedilna sporočila, 937 00:40:44,510 --> 00:40:45,466 če nisem zamočil. 938 00:40:45,466 --> 00:40:51,106 939 00:40:51,106 --> 00:40:51,606 Lepo. 940 00:40:51,606 --> 00:40:55,556 941 00:40:55,556 --> 00:40:58,430 Lahko traja nekaj časa, statistično, dokler ne pridemo do e-pošte address-- 942 00:40:58,430 --> 00:41:00,573 besedilno sporočilo, ki je v sobi prav zdaj. 943 00:41:00,573 --> 00:41:03,880 944 00:41:03,880 --> 00:41:05,390 Oglejmo ostajal in videti. 945 00:41:05,390 --> 00:41:06,940 >> OBČINSTVO: [žvižga] 946 00:41:06,940 --> 00:41:08,270 >> SPEAKER 1: Oh, ja. 947 00:41:08,270 --> 00:41:09,230 >> OBČINSTVO: Oh, gotcha. 948 00:41:09,230 --> 00:41:16,720 949 00:41:16,720 --> 00:41:19,180 >> SPEAKER 1: Za zank are-- to ni počasen, ker PHP. 950 00:41:19,180 --> 00:41:21,810 To je počasen, ker Gmail nas dušenjem in ne 951 00:41:21,810 --> 00:41:25,170 najemnin, pošljite nam več kot kot eno e-pošto na sekundo. 952 00:41:25,170 --> 00:41:26,300 Kaj? 953 00:41:26,300 --> 00:41:29,990 To je bilo težko stvar za mene, da preizkusiti domov samo z mano in mojim enega telefona, tako. 954 00:41:29,990 --> 00:41:37,630 955 00:41:37,630 --> 00:41:41,111 Je to, upajmo, iz bot? 956 00:41:41,111 --> 00:41:41,610 Ja? 957 00:41:41,610 --> 00:41:42,110 Ne? 958 00:41:42,110 --> 00:41:44,760 959 00:41:44,760 --> 00:41:46,620 Reci da. 960 00:41:46,620 --> 00:41:47,479 Ne? 961 00:41:47,479 --> 00:41:49,374 To je od prijatelja? 962 00:41:49,374 --> 00:41:49,874 Awkward. 963 00:41:49,874 --> 00:41:50,374 V REDU. 964 00:41:50,374 --> 00:41:56,580 965 00:41:56,580 --> 00:42:00,090 Prepričan sem, da deluje, čeprav. 966 00:42:00,090 --> 00:42:00,910 Uh oh. 967 00:42:00,910 --> 00:42:03,190 So black-- oh, počakajte minuto. 968 00:42:03,190 --> 00:42:04,280 Oh, veš kaj? 969 00:42:04,280 --> 00:42:06,100 Trenutek prosim. 970 00:42:06,100 --> 00:42:07,802 Samo je Maya in I-- Mia, kajne? 971 00:42:07,802 --> 00:42:08,301 MAYA: Maya. 972 00:42:08,301 --> 00:42:12,110 SPEAKER 1: Maya, se dogaja, da vem, kaj sem naredil narobe tukaj. 973 00:42:12,110 --> 00:42:14,890 Oh, počakaj malo. 974 00:42:14,890 --> 00:42:23,320 Mislim, da sem poslal 100 besedilna sporočila na 555-1212. 975 00:42:23,320 --> 00:42:24,346 Ostani v pripravljenosti. 976 00:42:24,346 --> 00:42:28,080 977 00:42:28,080 --> 00:42:29,270 Ne morem zmagati katerokoli leto. 978 00:42:29,270 --> 00:42:30,180 V REDU. 979 00:42:30,180 --> 00:42:30,680 Maya? 980 00:42:30,680 --> 00:42:33,530 981 00:42:33,530 --> 00:42:36,219 Popraviti, da se v postprodukcije. 982 00:42:36,219 --> 00:42:36,718 Prekleto! 983 00:42:36,718 --> 00:42:39,430 984 00:42:39,430 --> 00:42:40,390 Po iz naslova. 985 00:42:40,390 --> 00:42:41,301 OK, stati ob strani. 986 00:42:41,301 --> 00:42:41,800 Žal mi je. 987 00:42:41,800 --> 00:42:44,550 988 00:42:44,550 --> 00:42:47,080 To je boleče vsako leto. 989 00:42:47,080 --> 00:42:48,640 OK, samo trenutek. 990 00:42:48,640 --> 00:42:50,530 To je dobro. 991 00:42:50,530 --> 00:42:54,010 Jaz sem namesto tega bo, da to storijo. 992 00:42:54,010 --> 00:42:55,470 Print naslov. 993 00:42:55,470 --> 00:42:56,030 OK, stati ob strani. 994 00:42:56,030 --> 00:43:01,340 Tiskanje naslove, konzola i. 995 00:43:01,340 --> 00:43:02,710 Ja, to mi je všeč. 996 00:43:02,710 --> 00:43:10,220 Dollar sign-- OK bom razložiti, kaj sem delaš v trenutku, ko sem to teči. 997 00:43:10,220 --> 00:43:11,670 Vsako leto. 998 00:43:11,670 --> 00:43:13,125 OK, gremo. 999 00:43:13,125 --> 00:43:15,750 Imam just-- in ne želim pokazati vsakogar telefonsko številko, 1000 00:43:15,750 --> 00:43:17,740 vendar Maya lahko potrdim z pokimal glave, 1001 00:43:17,740 --> 00:43:20,800 da vidi vsakdo je Telefonska številka v razredu 1002 00:43:20,800 --> 00:43:26,750 da bom skopirala v program, imenovan Gmail. 1003 00:43:26,750 --> 00:43:30,860 In če v Gmailu, kaj želimo povedati? 1004 00:43:30,860 --> 00:43:32,137 Pogrešam te. 1005 00:43:32,137 --> 00:43:33,220 Love--, da to ni od mene. 1006 00:43:33,220 --> 00:43:35,230 Nisem še udaril poslati še. 1007 00:43:35,230 --> 00:43:39,450 Torej, gremo naprej in narediti to, če bom lahko povečate. 1008 00:43:39,450 --> 00:43:40,300 V REDU. 1009 00:43:40,300 --> 00:43:42,480 Tako da sem s pomočjo programa, imenovanega Gmail zdaj. 1010 00:43:42,480 --> 00:43:44,490 Če Maya, ki jo želite kliknite gumb Pošlji 1011 00:43:44,490 --> 00:43:46,970 bomo simulacijo, kaj to koda bi moral narediti. 1012 00:43:46,970 --> 00:43:54,630 1013 00:43:54,630 --> 00:43:55,254 >> Kaj? 1014 00:43:55,254 --> 00:43:56,062 >> [Piska] 1015 00:43:56,062 --> 00:43:56,870 >> OBČINSTVO: Ja. 1016 00:43:56,870 --> 00:43:58,030 >> SPEAKER 1: Ja? 1017 00:43:58,030 --> 00:43:59,210 Salvation? 1018 00:43:59,210 --> 00:44:00,427 >> OBČINSTVO: Ja. 1019 00:44:00,427 --> 00:44:01,260 SPEAKER 1: Miss vas. 1020 00:44:01,260 --> 00:44:02,718 In bom, da pošlje ostalo. 1021 00:44:02,718 --> 00:44:06,060 Sem poslal ven polovico, ker si nisem mislil, Gmail bi pustil tiste iti skozi. 1022 00:44:06,060 --> 00:44:12,410 Torej, samo ne pozabite, danes je dan, da ste se naučili, da sem lahko uporabljate Gmail. 1023 00:44:12,410 --> 00:44:14,977 1024 00:44:14,977 --> 00:44:15,810 To je bilo grozljivo. 1025 00:44:15,810 --> 00:44:17,140 Velik aplavz za Maya. 1026 00:44:17,140 --> 00:44:18,980 Hvala. 1027 00:44:18,980 --> 00:44:21,280 Vse je v redu, tako. 1028 00:44:21,280 --> 00:44:22,210 kaj 1029 00:44:22,210 --> 00:44:23,140 >> [Piska] 1030 00:44:23,140 --> 00:44:25,010 1031 00:44:25,010 --> 00:44:26,580 >> Imamo nekaj piska, ja? 1032 00:44:26,580 --> 00:44:27,080 V redu. 1033 00:44:27,080 --> 00:44:30,590 Zdaj pa grem, da bi dobili 700 res nesrečni emails nazaj od sošolcev. 1034 00:44:30,590 --> 00:44:32,400 Tako vsaj bomo videli če je bilo vredno. 1035 00:44:32,400 --> 00:44:33,300 Torej, kaj je šlo narobe? 1036 00:44:33,300 --> 00:44:35,300 Bom ugotoviti, kaj je šlo Napačna po dejstvu, 1037 00:44:35,300 --> 00:44:38,340 ampak samo poglej, kako enostavno je bilo za to, da v PHP. 1038 00:44:38,340 --> 00:44:44,598 Torej, kaj lahko dejansko storiti sedaj, imamo to izraznost PHP. 1039 00:44:44,598 --> 00:44:45,970 To was--, da je bilo grozno. 1040 00:44:45,970 --> 00:44:46,480 V redu. 1041 00:44:46,480 --> 00:44:48,430 Tako, da je tisto, kar naj bi šla ven. 1042 00:44:48,430 --> 00:44:52,770 To je bilo me testiranje danes zjutraj na mojem telefon, dejanska screenshot mojega telefona. 1043 00:44:52,770 --> 00:44:56,180 >> Ampak zdaj pa je razmisliti, zakaj smo dejansko uvedbo 1044 00:44:56,180 --> 00:44:57,840 vse te stvari na prvem mestu. 1045 00:44:57,840 --> 00:45:01,625 Torej cilj je, da ne bo pisati te programe, ki 1046 00:45:01,625 --> 00:45:03,250 so zapisani v ukazni vrstici, kajne? 1047 00:45:03,250 --> 00:45:05,000 Zato sem napisal preprost Pozdravljeni program sem napisal 1048 00:45:05,000 --> 00:45:09,155 malo program, ki počne Pogojniki, in se uporablja za branje linije in tako naprej. 1049 00:45:09,155 --> 00:45:11,530 In v teoriji, sem napisal program, ki je poslala 1050 00:45:11,530 --> 00:45:14,290 800 besedilna sporočila, dati ali vzeti 800. 1051 00:45:14,290 --> 00:45:16,830 In ta program je bil vse še vedno teče v ukazni vrstici. 1052 00:45:16,830 --> 00:45:18,538 In to je seveda Ne web, kajne? 1053 00:45:18,538 --> 00:45:22,160 Cilj je zdaj, da začnete uporabljati kar trdim je lažje za uporabo 1054 00:45:22,160 --> 00:45:24,720 jezik, si trditi bolj zmogljiv jezik v smislu 1055 00:45:24,720 --> 00:45:27,104 od funkcij, ki pridi z njim, da začnete 1056 00:45:27,104 --> 00:45:29,850 pisanje kode, ki ustvarja spletne strani. 1057 00:45:29,850 --> 00:45:33,248 >> Torej zadnji čas in prejšnji teden, smo se pogovarjali o HTTP in HTML. 1058 00:45:33,248 --> 00:45:36,350 In kaj je lepo o HTML je, da je samo čista besedilo. 1059 00:45:36,350 --> 00:45:38,220 In besedilo je gotovo nekaj, kar si lahko 1060 00:45:38,220 --> 00:45:42,040 tiskanje, ki ga dobesedno kliče tiskanja funkcija f, ali funkcija tiskanja. 1061 00:45:42,040 --> 00:45:46,160 In res, da je tisto, kar je PHP zdaj dogaja, da nam omogočajo, da storiti. 1062 00:45:46,160 --> 00:45:48,610 Torej med primeri smo imajo v današnjem izvorno kodo, 1063 00:45:48,610 --> 00:45:51,610 poleg nekaterih kode da sem dal tja gor pred nekaj trenutki, 1064 00:45:51,610 --> 00:45:55,440 imamo programe, kot so to na primer. 1065 00:45:55,440 --> 00:45:58,760 Froshims ali Freshman Notranji Sports, je bil pravzaprav 1066 00:45:58,760 --> 00:46:01,500 ena od prvih extracurriculars Sem se ukvarjajo z leti. 1067 00:46:01,500 --> 00:46:03,750 In moj cimer in jaz, z nekateri drugi otroci na kampusu, 1068 00:46:03,750 --> 00:46:05,280 se uporablja za zagon programa froshims. 1069 00:46:05,280 --> 00:46:07,420 Dobivam moje besedilnih sporočil danes. 1070 00:46:07,420 --> 00:46:14,030 >> Zdaj zato, nazaj v dan, tako da je ta je bilo 1.996 ali tako, da je bil internet, 1071 00:46:14,030 --> 00:46:17,395 vendar ni bilo process-- tam ni bila spletna stran za froshims. 1072 00:46:17,395 --> 00:46:20,270 In tako, če si hotel, da se prijavite za nogomet ali odbojko ali karkoli, 1073 00:46:20,270 --> 00:46:22,240 bi izpolnite ta stvar imenovani kos papirja, 1074 00:46:22,240 --> 00:46:25,060 in bi se sprehodite po Harvardu dvorišče, in vi bi ga potisnite 1075 00:46:25,060 --> 00:46:29,230 v poštnem režo za Proctor, ki je bil v Wigglesworth, eden od domovih. 1076 00:46:29,230 --> 00:46:31,270 In to so ti registrirani. 1077 00:46:31,270 --> 00:46:33,570 In on ali ona bi potem sestavite e-pošto na vas 1078 00:46:33,570 --> 00:46:36,514 ročno, tako kot I pravkar storil tukaj z Maya, 1079 00:46:36,514 --> 00:46:38,930 in potem bi mogoče potrditi kot da je bila registrirana. 1080 00:46:38,930 --> 00:46:40,840 >> Torej, to je kot nizko visi sadje, tako rekoč. 1081 00:46:40,840 --> 00:46:42,930 To je nekako neumno, da smo bili z uporabo papirja za to. 1082 00:46:42,930 --> 00:46:45,024 Želel sem, da bi bili sposobni samo iti na spletni strani, 1083 00:46:45,024 --> 00:46:47,440 ali imajo novincev gredo na Spletna stran, prijavite se za šport, 1084 00:46:47,440 --> 00:46:50,398 in samo avtomatizirati veliko te stvari s tem da njihova imena in e-pošto 1085 00:46:50,398 --> 00:46:51,850 in tako naprej v bazo podatkov. 1086 00:46:51,850 --> 00:46:56,510 In v resnici, zelo prva različica na spletni strani, s pomočjo super grdo HTML, 1087 00:46:56,510 --> 00:46:58,195 morda pogledal kaj takega. 1088 00:46:58,195 --> 00:47:01,070 Bilo je pravzaprav ironično, bolj neprijetno videti kot ta zadnji 1089 00:47:01,070 --> 00:47:01,460 potem. 1090 00:47:01,460 --> 00:47:02,890 Ampak sem uporabil programski jezik. 1091 00:47:02,890 --> 00:47:06,060 Ne PHP, temveč se imenuje Perl, ki je starejši jezik, 1092 00:47:06,060 --> 00:47:07,251 ampak zelo podobno v duhu. 1093 00:47:07,251 --> 00:47:09,000 In sem popolnoma je učil sam. 1094 00:47:09,000 --> 00:47:12,208 In to mi je vzel nekaj časa, da to ugotovimo, sprašuje veliko vprašanj prijateljev. 1095 00:47:12,208 --> 00:47:14,080 Toda ideje tam bili povsem enako. 1096 00:47:14,080 --> 00:47:18,050 Ker kaj je PHP res zasnovan za ni ukazni vrstici stvari 1097 00:47:18,050 --> 00:47:20,450 smo samo igral s, ampak za programiranje web. 1098 00:47:20,450 --> 00:47:24,960 >> To je res vezana v svoji funkciji nastavljena na spletu, kot sledi. 1099 00:47:24,960 --> 00:47:26,370 To je froshims. 1100 00:47:26,370 --> 00:47:28,720 In če sem hotel Registrirajte se v tej obliki, 1101 00:47:28,720 --> 00:47:30,930 to je precej grda, Vsekakor, ampak mi gremo naprej 1102 00:47:30,930 --> 00:47:34,440 in je manj udoben študent, in glede na šport za Matthews, 1103 00:47:34,440 --> 00:47:35,630 kliknite register. 1104 00:47:35,630 --> 00:47:39,780 Kaj hočem biti sposoben narediti, je predložiti podatke iz obrazca, 1105 00:47:39,780 --> 00:47:42,400 ne Googlovim strežnikom, kot sva zadnjič, povsem 1106 00:47:42,400 --> 00:47:47,100 varanje z uporabo svojih backend sem želijo izvajati svoj backend kodo. 1107 00:47:47,100 --> 00:47:51,410 Kar pomeni, da napišete PHP Koda, ki živi na URL 1108 00:47:51,410 --> 00:47:54,180 da se podatki obrazcev je mogoče predložiti. 1109 00:47:54,180 --> 00:47:57,510 >> In potem kodo, napisana v PHP na strežniku, 1110 00:47:57,510 --> 00:47:59,400 Nato lahko odzove na ta vnos uporabnika. 1111 00:47:59,400 --> 00:48:03,287 Tako kot njegovo ali njeno ime, ali raven udobja, ali domu, nato pa naredite nekaj z njo. 1112 00:48:03,287 --> 00:48:05,120 V tem primeru sem neumno ga natisne 1113 00:48:05,120 --> 00:48:06,750 kot besedilo, ki sploh ni tako lepa. 1114 00:48:06,750 --> 00:48:09,590 Ampak ti bi zagotovo predstavljate, če veste, HTML, 1115 00:48:09,590 --> 00:48:13,010 in kmalu boste vedeli, kako ustvariti HTML z možnostjo tiskanja F in tisk, 1116 00:48:13,010 --> 00:48:16,500 in podobne funkcije, lahko zagotovo ustvarjajo lepši spletno stran, ki pravi, 1117 00:48:16,500 --> 00:48:17,929 hej David, sedaj ste registrirani. 1118 00:48:17,929 --> 00:48:20,220 Ste manj udoben študent iz Matthews, kajne? 1119 00:48:20,220 --> 00:48:23,880 >> Saj lahko uporabiš cel kup% SES, ali zaviti oklepaji in znak za dolar 1120 00:48:23,880 --> 00:48:27,750 Zapis sem pred nekaj trenutki, da ustvarjajo besedila, ki je bolj prijazen do uporabnika 1121 00:48:27,750 --> 00:48:28,567 kot to. 1122 00:48:28,567 --> 00:48:30,150 Torej, dajmo si oglejte na tej eni datoteki. 1123 00:48:30,150 --> 00:48:34,666 Froshim nič dot PHP izgleda takole. 1124 00:48:34,666 --> 00:48:37,860 1125 00:48:37,860 --> 00:48:43,500 Ko sem osvežite CS50 IDE, froshim nič videti takole. 1126 00:48:43,500 --> 00:48:45,700 To je froshim nič pika PHP. 1127 00:48:45,700 --> 00:48:47,730 In kaj opaziš te datoteke? 1128 00:48:47,730 --> 00:48:49,506 >> OBČINSTVO: [neslišno] 1129 00:48:49,506 --> 00:48:50,922 SPEAKER 1: Žal mi je, malo glasneje? 1130 00:48:50,922 --> 00:48:53,250 OBČINSTVO: [neslišno] To je vse v HTML. 1131 00:48:53,250 --> 00:48:57,130 In dejansko je, ker kaj je zanimivo PHP 1132 00:48:57,130 --> 00:48:58,880 je, da je bilo načrtovano da je, za boljše 1133 00:48:58,880 --> 00:49:02,110 ali še huje, pomešana s HTML kodo. 1134 00:49:02,110 --> 00:49:05,850 In v resnici, čeprav je to Datoteka, froshim nič dot PHP, 1135 00:49:05,850 --> 00:49:11,470 ima PHP komentar na vrhu od tega, da je vse samo HTML. 1136 00:49:11,470 --> 00:49:17,655 Ampak nasprotno, če sem odprla, dajmo recimo, registrirati nič dot PHP, ki 1137 00:49:17,655 --> 00:49:19,550 ima samo velik komentar na vrhu. 1138 00:49:19,550 --> 00:49:26,500 Tudi to izgleda skoraj v celoti kot so HTML, razen za kaj? 1139 00:49:26,500 --> 00:49:29,350 Line, kaj, 21 izgleda malo čudno. 1140 00:49:29,350 --> 00:49:32,739 >> Ampak opazila sem vstopu PHP način z odprto nosilcem Vprašanje znamke PHP. 1141 00:49:32,739 --> 00:49:33,780 Potem imam nekaj stvari. 1142 00:49:33,780 --> 00:49:36,724 In potem na koncu te črte Skoraj sem imel, vprašaj PHP. 1143 00:49:36,724 --> 00:49:38,390 In to je tisto, kar mislim s pomešale. 1144 00:49:38,390 --> 00:49:41,910 Lahko pišete HTML, ki ste jo pravkar želijo strežnik izpljunite. 1145 00:49:41,910 --> 00:49:45,090 Ampak, če hočeš narediti nekaj dinamična partway po strani, 1146 00:49:45,090 --> 00:49:47,699 kot vstavite moje ime ali domu ali raven udobja, 1147 00:49:47,699 --> 00:49:49,490 Jaz lahko uporabite funkcijo kot tiskanja r, ki je 1148 00:49:49,490 --> 00:49:52,492 tiskanje rekurzivna, kar samo pomeni, natisnete to spremenljivko, jo formatiranje 1149 00:49:52,492 --> 00:49:53,200 kakorkoli želite. 1150 00:49:53,200 --> 00:49:55,880 To je res ni za človekove namene, to je samo 1151 00:49:55,880 --> 00:49:58,290 za odpravljanje napak ali diagnostične namene. 1152 00:49:58,290 --> 00:49:59,460 Torej, to je, kako sem to naredil. 1153 00:49:59,460 --> 00:50:06,100 >> Če bi namesto tega iti froshims dva pika PHP, opazili, da je tožba tega obrazca 1154 00:50:06,100 --> 00:50:09,680 ni registriran nič dot PHP kot old-- prejšnja dejansko bilo. 1155 00:50:09,680 --> 00:50:11,222 Ampak to je registrirana dva dot PHP. 1156 00:50:11,222 --> 00:50:13,680 Torej, si oglejmo, kako je ta obnaša malo drugače. 1157 00:50:13,680 --> 00:50:15,140 Če grem v različici dva. 1158 00:50:15,140 --> 00:50:20,430 Če je tukaj, če se registriram kot Davidu manj udobna, iz domu v Mathews, 1159 00:50:20,430 --> 00:50:21,480 registrirati. 1160 00:50:21,480 --> 00:50:23,770 Torej, ta čas pa je dejal, si so registrirani, ni res. 1161 00:50:23,770 --> 00:50:25,370 Poglejmo, kaj sem naredil tukaj. 1162 00:50:25,370 --> 00:50:29,760 Če gledam na registru dve dot PHP, to je nekaj več PHP kodo. 1163 00:50:29,760 --> 00:50:35,410 To je malo čistejši, čeprav je to Še vedno ovije malo dolgo na tej progi. 1164 00:50:35,410 --> 00:50:36,260 Opazili tukaj. 1165 00:50:36,260 --> 00:50:40,300 Tiskam iz moje HTML tag, moja glava tag, moj naslov tag, glava, telo. 1166 00:50:40,300 --> 00:50:45,410 >> In potem sem začel reči Stvari, kot so vstop PHP način. 1167 00:50:45,410 --> 00:50:48,540 In tako to oznako, odprt oklepaj PHP-- vprašaj PHP pravi, 1168 00:50:48,540 --> 00:50:53,460 hej, strežnik, execute-- razlagajo naslednje stvari, kot so PHP 1169 00:50:53,460 --> 00:50:55,030 dokler ne boste videli konec oznako. 1170 00:50:55,030 --> 00:50:58,590 In čeprav morda ne veste, katero koli drugi PHP, kot ste videli doslej, 1171 00:50:58,590 --> 00:51:01,290 lahko nekako prebrati je precej intuitivno. 1172 00:51:01,290 --> 00:51:10,670 Če ime je prazna, ali pa udobje je prazna ali domu je prazna, kaj naj storim? 1173 00:51:10,670 --> 00:51:12,830 Kaj naj rečem za uporabnika? 1174 00:51:12,830 --> 00:51:15,330 Morate navesti svoje ime, udobje, in domu, in tako naprej. 1175 00:51:15,330 --> 00:51:17,750 Else, sem rekel, da so registrirana, tudi ni res. 1176 00:51:17,750 --> 00:51:19,190 >> In sem rekel, ni res saj ni baza podatkov. 1177 00:51:19,190 --> 00:51:20,200 Jaz ne delam ničesar s podatki. 1178 00:51:20,200 --> 00:51:22,408 Jaz sem samo metanje stran za predstavitvene namene. 1179 00:51:22,408 --> 00:51:24,320 Sedaj sem nekako skimped preko linije 22. 1180 00:51:24,320 --> 00:51:26,400 Obstaja več sintakso tam, ampak znak za dolar 1181 00:51:26,400 --> 00:51:28,320 podčrtaj objava je nekako zanimivo. 1182 00:51:28,320 --> 00:51:30,300 In to je tisto, kar je lepo o PHP. 1183 00:51:30,300 --> 00:51:35,610 V PHP, imate kar imenujemo nekaj super globalne spremenljivke. 1184 00:51:35,610 --> 00:51:38,430 So nekako še bolj pomembnejši od globalnih spremenljivk. 1185 00:51:38,430 --> 00:51:41,370 In ti, vsi kapitalizirana kot tako, prihajajo z PHP. 1186 00:51:41,370 --> 00:51:44,550 Torej, če imate strežnik, ki ima vgrajen spletni strežnik, kot so Apache, 1187 00:51:44,550 --> 00:51:49,390 in namestite jezik podpora za PHP, kar naenkrat ste 1188 00:51:49,390 --> 00:51:52,250 Lahko začnete z uporabo teh super globalnih spremenljivk v kodi. 1189 00:51:52,250 --> 00:51:54,330 >> In kaj je lepo o PHP je, da če si pravkar 1190 00:51:54,330 --> 00:51:57,540 napisati datoteko, ki se konča v dot PHP, ga postaviti na spletnem strežniku, 1191 00:51:57,540 --> 00:52:01,260 nato pa predloži obrazec za njo prek tega pasična in obliko oznak, 1192 00:52:01,260 --> 00:52:05,110 da ukrep atribut v form tag, PHP in splet 1193 00:52:05,110 --> 00:52:09,360 popolnoma številke izvedeti, kako, da zgrabite vseh tistih ključnih parov vrednosti ven 1194 00:52:09,360 --> 00:52:11,633 URL-ja, kot so vprašanje oznaka q enak mačke, 1195 00:52:11,633 --> 00:52:14,782 pa bo ugotoviti, kako q in mačke. 1196 00:52:14,782 --> 00:52:17,710 Če pošljete fotografijo ali uporabniško ime, ali geslo za, kot so Facebook, 1197 00:52:17,710 --> 00:52:21,360 PHP bo razbrati za vas kjer vse te podatke, je. 1198 00:52:21,360 --> 00:52:23,821 In to samo roko Ste asociativno paleto 1199 00:52:23,821 --> 00:52:27,560 imenuje znak za dolar podčrtaj post ali znak za dolar podčrtaj dobili, 1200 00:52:27,560 --> 00:52:30,590 glede na to, ali ste uporabo get ali objaviti stališča. 1201 00:52:30,590 --> 00:52:32,950 In bo to samo ti roko super globalna spremenljivka, 1202 00:52:32,950 --> 00:52:37,254 tako da če hočeš priti na ime da je uporabnik predložil prek tega spleta 1203 00:52:37,254 --> 00:52:41,894 obliko, dobesedno samo reči ime od super globalne spremenljivke, citiram, 1204 00:52:41,894 --> 00:52:43,380 konec citata, ime. 1205 00:52:43,380 --> 00:52:46,144 In citiram, konec citata udobje, in citiram, konec citata domu. 1206 00:52:46,144 --> 00:52:48,810 In bomo mogli storiti to in še veliko več s PHP. 1207 00:52:48,810 --> 00:52:50,540 In čeprav je bilo to vrtinec pogled na to, 1208 00:52:50,540 --> 00:52:51,980 bomo potopite v veliko bolj naslednji teden. 1209 00:52:51,980 --> 00:52:54,247 Bomo uvesti baze podatkov tako da ste dejansko 1210 00:52:54,247 --> 00:52:56,816 gre za začetek izvajanja svoj e-trgovine based-- 1211 00:52:56,816 --> 00:52:59,150 kot so spletne strani v času le za en teden. 1212 00:52:59,150 --> 00:53:02,750 Tako vam bomo videli naslednjič, in upam, da si dobil besedilnih sporočil. 1213 00:53:02,750 --> 00:53:05,450 Adijo. 1214 00:53:05,450 --> 00:53:06,950 >> [Predvaja glasba] 1215 00:53:06,950 --> 00:53:11,450 1216 00:53:11,450 --> 00:53:12,950 >> [ODPIRANJE VRAT] 1217 00:53:12,950 --> 00:53:14,475 >> SPEAKER 2: Hej. 1218 00:53:14,475 --> 00:53:15,350 SPEAKER 3: Kaj se dogaja? 1219 00:53:15,350 --> 00:53:17,750 SPEAKER 2: Kaj počneš? 1220 00:53:17,750 --> 00:53:19,850 SPEAKER 3: Delo na problem nizu. 1221 00:53:19,850 --> 00:53:21,050 SPEAKER 2: Lepo. 1222 00:53:21,050 --> 00:53:22,550 Petka. 1223 00:53:22,550 --> 00:53:23,150 >> [PETKA] 1224 00:53:23,150 --> 00:53:25,584 >> Kaj are-- uh, kaj delaš tukaj? 1225 00:53:25,584 --> 00:53:26,750 SPEAKER 3: Samo družim. 1226 00:53:26,750 --> 00:53:28,134 Pravkar prišel iz telovadnice. 1227 00:53:28,134 --> 00:53:30,050 Ne morem pomagati, ampak opazili, ko smo visoko fived, 1228 00:53:30,050 --> 00:53:32,450 da imate precej grobe roke. 1229 00:53:32,450 --> 00:53:33,950 Ali greš v telovadnico? 1230 00:53:33,950 --> 00:53:35,150 >> SPEAKER 2: No. 1231 00:53:35,150 --> 00:53:36,650 No. 1232 00:53:36,650 --> 00:53:38,450 >> SPEAKER 3: Stari, izgledaš precej velik. 1233 00:53:38,450 --> 00:53:45,950 Kar je slabo, ker vsi vedo, 8-ball je velik človek na kampusu. 1234 00:53:45,950 --> 00:53:48,050 Petka. 1235 00:53:48,050 --> 00:53:49,550 >> SPEAKER 2: Uh, ne. 1236 00:53:49,550 --> 00:53:50,450 Ne, mislim, da sem dober. 1237 00:53:50,450 --> 00:53:52,300 Mislim, da sem dober. 1238 00:53:52,300 --> 00:53:54,097