1 00:00:00,000 --> 00:00:04,410 >> [Мусиц плаиинг] 2 00:00:04,410 --> 00:00:12,250 3 00:00:12,250 --> 00:00:15,770 >> СПЕАКЕР 1: Ово је ЦС50 и ово је крај недеље седам. 4 00:00:15,770 --> 00:00:20,240 Данас је можда где смо ти стварно учење језика. 5 00:00:20,240 --> 00:00:24,100 Увели смо у протеклих неколико недеља ХТМЛ и ЦСС, од којих ни једна 6 00:00:24,100 --> 00:00:25,240 су програмски језици. 7 00:00:25,240 --> 00:00:28,600 И заиста, иако нисмо погледај скоро све ознаке 8 00:00:28,600 --> 00:00:33,410 да долази са ХТМЛ-а готово сви својстава које долази са ЦСС, 9 00:00:33,410 --> 00:00:35,007 То је врста тога за ХТМЛ и ЦСС. 10 00:00:35,007 --> 00:00:36,840 Ми ћемо само генерално почнете под претпоставком да вас 11 00:00:36,840 --> 00:00:39,545 разумеју опште идеје ознака и атрибута, 12 00:00:39,545 --> 00:00:41,850 и странице шаљу од клијента до сервера. 13 00:00:41,850 --> 00:00:45,280 >> Јер данас почнемо да погледамо други програмски језик ПХП. 14 00:00:45,280 --> 00:00:47,110 Ми ћемо то учинити супер брзо. 15 00:00:47,110 --> 00:00:50,910 Нећемо да вас научити ПХП-по себи, слично нисмо тежити да те научим 16 00:00:50,910 --> 00:00:52,670 Ц, пер се, већ програмирање. 17 00:00:52,670 --> 00:00:55,088 И заиста, један од циљеви за овај курс 18 00:00:55,088 --> 00:00:57,820 није да вас научим Ц, или ХТМЛ, или ЦСС, или ПХП, 19 00:00:57,820 --> 00:01:00,370 или било који број других бузз речи или скраћенице, 20 00:01:00,370 --> 00:01:03,097 већ у компјутерске науке и како да у основи програм. 21 00:01:03,097 --> 00:01:05,930 И заиста, данас почињемо да те обуке точкови офф све 22 00:01:05,930 --> 00:01:10,600 додатно летење кроз језик назван пхп, као што следи. 23 00:01:10,600 --> 00:01:13,640 >> Ево шта овај језик изгледа. 24 00:01:13,640 --> 00:01:17,790 Испоставило се да нема потребе за главна функција у програму написано 25 00:01:17,790 --> 00:01:19,470 на језику који се зове ПХП-а. 26 00:01:19,470 --> 00:01:22,585 Тако да већ звучи мало једноставније од Ц, са којима смо упознати. 27 00:01:22,585 --> 00:01:25,370 Испада да ако Желим да прогласи променљиву, 28 00:01:25,370 --> 00:01:29,470 ви то радите скоро идентично на Ц. Али јасно је да је једна разлика овде 29 00:01:29,470 --> 00:01:31,850 када сам прогласити стринг, или можда две разлике. 30 00:01:31,850 --> 00:01:32,725 Шта изгледа другачије? 31 00:01:32,725 --> 00:01:35,810 32 00:01:35,810 --> 00:01:37,160 >> ПУБЛИКА: Знак долара. 33 00:01:37,160 --> 00:01:39,951 >> СПЕАКЕР 1: Да, ту је долар потпише, што никада нисмо видели. 34 00:01:39,951 --> 00:01:41,451 А шта недостаје? 35 00:01:41,451 --> 00:01:41,950 Да? 36 00:01:41,950 --> 00:01:42,820 >> ПУБЛИКА: [неразумљиво] 37 00:01:42,820 --> 00:01:44,403 >> СПЕАКЕР 1: Да, нема тип података. 38 00:01:44,403 --> 00:01:48,410 Тако испада да је ПХП је оно што ми позовите лабаво откуцан језик, гдје 39 00:01:48,410 --> 00:01:49,959 Ц је снажно откуца. 40 00:01:49,959 --> 00:01:52,500 Лабаво откуцао само значи да постоје различите врсте података, 41 00:01:52,500 --> 00:01:54,470 постоје жице, и ИНТС и плута. 42 00:01:54,470 --> 00:01:56,330 Али компјутер бројке то. 43 00:01:56,330 --> 00:01:58,664 Ти си људско програмер Не морам да га схватим. 44 00:01:58,664 --> 00:02:00,580 Дакле, све што треба да урадите да прогласи је променљива 45 00:02:00,580 --> 00:02:03,220 долар знак, име твоје променљива, а потом, на пример, 46 00:02:03,220 --> 00:02:04,760 под знацима навода, здраво свет. 47 00:02:04,760 --> 00:02:07,662 >> Па ово је оно што Услов изгледа као у ПХП. 48 00:02:07,662 --> 00:02:08,328 Има ли разлике? 49 00:02:08,328 --> 00:02:10,650 50 00:02:10,650 --> 00:02:11,150 Ne. 51 00:02:11,150 --> 00:02:12,540 Тако испада су идентични. 52 00:02:12,540 --> 00:02:14,665 А можда ћете имати мање гране или више грана, 53 00:02:14,665 --> 00:02:16,557 али синтакса кривине од исто. 54 00:02:16,557 --> 00:02:18,390 Боолеан изрази могу се наручити заједно. 55 00:02:18,390 --> 00:02:20,400 Боолеан изрази могу да се андед заједно. 56 00:02:20,400 --> 00:02:21,430 Још увек имате прекидача. 57 00:02:21,430 --> 00:02:23,790 Чак и ако нисте користили ови, они не постоје у Ц 58 00:02:23,790 --> 00:02:26,020 и они су функционално еквивалент у ПХП. 59 00:02:26,020 --> 00:02:28,260 >> И у ствари, они су у ПХП мало моћнији. 60 00:02:28,260 --> 00:02:32,540 У Ц, можете само да упоредите сигурна врсте података попут интс и карактера, 61 00:02:32,540 --> 00:02:36,320 док у ПХП заправо можете упоредити фулл перје жице без потребе 62 00:02:36,320 --> 00:02:38,460 да брине о тројкама и слично. 63 00:02:38,460 --> 00:02:39,430 Дакле, овде је за петљу. 64 00:02:39,430 --> 00:02:41,270 Ово је само Псеудокод код, ако хоћете. 65 00:02:41,270 --> 00:02:43,400 Али структурално је идентичан Ц. 66 00:02:43,400 --> 00:02:47,520 >> Ево док петља, Псеудокод тхерефоре-- идентичан Ц. 67 00:02:47,520 --> 00:02:49,390 Ево радим док лооп-- идентични. 68 00:02:49,390 --> 00:02:51,390 И тако је некако тај образац овде где 69 00:02:51,390 --> 00:02:54,400 постоји неколико других синтактичка карактеристике ми заиста идемо да видимо. 70 00:02:54,400 --> 00:02:57,340 У ствари, овде је лепо начин у ПХП чиме, 71 00:02:57,340 --> 00:02:59,350 Ако желите да поновити преко низа, а ви 72 00:02:59,350 --> 00:03:02,309 не желе да скочи кроз менталне и синтаксне Хоопс оф има 73 00:03:02,309 --> 00:03:05,178 ИНТ И једнако 0, ја мање од н, и плус плус-- који 74 00:03:05,178 --> 00:03:07,040 само доста досадног синтаксе. 75 00:03:07,040 --> 00:03:10,654 Можете рећи нешто више флуидно за сваки бројева 76 00:03:10,654 --> 00:03:13,320 као број, у којој у овом случају Доллар сигн бројеве, претпостављам, 77 00:03:13,320 --> 00:03:15,400 је као низ бројева назива. 78 00:03:15,400 --> 00:03:18,810 И онда претпостављам број, једнина, ће бити променљива. 79 00:03:18,810 --> 00:03:22,940 >> А шта ПХП ће учинити за мене као што сам поновити над овим петљи је, на свакој итерацији, 80 00:03:22,940 --> 00:03:28,450 иде ажурирање променљив број на бити ИТХ елемент у бројевима, множини. 81 00:03:28,450 --> 00:03:30,060 Тако да само обрађује све то за мене. 82 00:03:30,060 --> 00:03:32,750 Нема угластим заградама, нема долар знак, без полу-Црева. 83 00:03:32,750 --> 00:03:34,117 То је само мало једноставније. 84 00:03:34,117 --> 00:03:35,950 Па, уколико желите Арраи, испада да 85 00:03:35,950 --> 00:03:38,908 може да уради нешто веома слично Ц. синтакса је мало другачија. 86 00:03:38,908 --> 00:03:41,000 Али овде се низ зове долар потписан бројева. 87 00:03:41,000 --> 00:03:44,261 И ја користим, у ПХП-у, трг држачи, испоставило се. 88 00:03:44,261 --> 00:03:47,260 И ми ћемо опет видети ово у ЈаваСцрипт-- још један језик. 89 00:03:47,260 --> 00:03:49,968 Ја само користити квадрат носач нотација да имају зарезом одвојена листа 90 00:03:49,968 --> 00:03:51,530 целих бројева, у овом случају. 91 00:03:51,530 --> 00:03:53,010 Али то ми даје низ. 92 00:03:53,010 --> 00:03:56,270 >> Али чак и моћнији у ПХП, Такође имамо шта су генерално 93 00:03:56,270 --> 00:03:57,640 зове асоцијативних низова. 94 00:03:57,640 --> 00:03:59,540 И много језика имати ове такође. 95 00:03:59,540 --> 00:04:03,810 Оно о Ц низова јесте да индекси 96 00:04:03,810 --> 00:04:06,940 за низ, оно што вас користити у угластим заградама преко којег 97 00:04:06,940 --> 00:04:08,600 да приступите елементе, морају бити шта? 98 00:04:08,600 --> 00:04:10,620 >> ПУБЛИКА: [неразумљиво] 99 00:04:10,620 --> 00:04:14,220 >> СПЕАКЕР 1: Морају бити бројеви или целих, посебно од нуле горе. 100 00:04:14,220 --> 00:04:17,140 Па, у ПХП, и, испоставило од, на другим језицима, 101 00:04:17,140 --> 00:04:20,820 можете почети да индекси који нису нумерички. 102 00:04:20,820 --> 00:04:23,880 Али они у ствари речи или фразе, тако да је уместо 103 00:04:23,880 --> 00:04:27,070 покушајте да се сетите где нешто је, или чувају у променљивом и, 104 00:04:27,070 --> 00:04:31,720 заправо можете користити реч и рећи то-- можете рећи ни реч овако. 105 00:04:31,720 --> 00:04:34,730 >> Дакле, долар знак цитат је назив променљиве овде. 106 00:04:34,730 --> 00:04:39,360 Ово је донекле фанки синтакса то је удруживање две кључне вредности 107 00:04:39,360 --> 00:04:41,250 парова за ову променљиву. 108 00:04:41,250 --> 00:04:45,490 Конкретно, ово ме даје низ који је дужине 2. 109 00:04:45,490 --> 00:04:47,660 Али индекси нису 0 и 1. 110 00:04:47,660 --> 00:04:51,250 Индекси су под знацима навода симбол и под знацима навода цена. 111 00:04:51,250 --> 00:04:55,990 А вредности тих индекса, односно, да ли је ФБ за Фацебоок 112 00:04:55,990 --> 00:05:00,360 и $ 79.53, када сам задњи проверити цену за то. 113 00:05:00,360 --> 00:05:01,210 >> Шта то значи? 114 00:05:01,210 --> 00:05:04,136 Па, то значи да уместо писања кода 115 00:05:04,136 --> 00:05:09,612 овако, где сам да урадим нешто као долар сигн-- односно у Ц 116 00:05:09,612 --> 00:05:11,070 Не бих ни знак за долар. 117 00:05:11,070 --> 00:05:13,490 Ја бих урадио нешто као цитате и затим 118 00:05:13,490 --> 00:05:18,410 Ја бих то конзолу сам да у неким произвољно нумерички индексиран вредност. 119 00:05:18,410 --> 00:05:21,430 Од данас у ПХП-у, ако вас Желим да се у неком вредности, 120 00:05:21,430 --> 00:05:24,742 некако смо имамо више семантичка експресивност. 121 00:05:24,742 --> 00:05:27,450 Само фенси начин да се каже можемо само зови ствари оно што јесу. 122 00:05:27,450 --> 00:05:29,800 >> А ако желите да добијете на нешто симбол, 123 00:05:29,800 --> 00:05:32,180 сада буквално урадити под знацима навода симбол 124 00:05:32,180 --> 00:05:34,910 у угластим заградама уместо обичног броја. 125 00:05:34,910 --> 00:05:36,450 Дакле, то је лепо погодност. 126 00:05:36,450 --> 00:05:38,140 И то је нека о томе за сада. 127 00:05:38,140 --> 00:05:40,240 Има гомиле друге карактеристике у ПХП. 128 00:05:40,240 --> 00:05:43,180 И заиста, ПХП долази са пословичну судопера. 129 00:05:43,180 --> 00:05:48,640 Десетине, стотине функција долазе са ПХП-- толико више него је дошао са Ц. 130 00:05:48,640 --> 00:05:51,360 >> И то не намерава да овервхелм већ помогне 131 00:05:51,360 --> 00:05:53,900 схватите да нисмо више не морају да пишу код 132 00:05:53,900 --> 00:05:55,590 То је врста овде концептуално. 133 00:05:55,590 --> 00:05:58,465 Сада можемо само да почнете да користите од много напреднија карактеристике 134 00:05:58,465 --> 00:05:59,920 да језици као ПХП имају. 135 00:05:59,920 --> 00:06:02,630 Дакле, не морамо да бринемо о креће ствари око у меморији. 136 00:06:02,630 --> 00:06:05,338 Ми не морамо да бринемо о маллоц и сви ових нижем нивоу, 137 00:06:05,338 --> 00:06:09,390 моћни детаљи који ће се рвати са, ако не боре са, псет5, 138 00:06:09,390 --> 00:06:13,380 али можете почети да Ускоро узимају здраво за готово. 139 00:06:13,380 --> 00:06:17,770 >> У ствари, хајде да напишемо супер једноставан програм у ПХП-у, као што следи. 140 00:06:17,770 --> 00:06:21,550 Ја идем главу у ЦС50 ИДЕ овде, и шта ћу да радим 141 00:06:21,550 --> 00:06:29,370 је креирати нову датотеку, која врло једноставно ће се звати здраво тачка ПХП. 142 00:06:29,370 --> 00:06:31,860 Дакле, уместо тачке ц, то је ће се звати тачка ПХП. 143 00:06:31,860 --> 00:06:34,260 А онда у овом фајлу, Ја могу почети са куцањем. 144 00:06:34,260 --> 00:06:36,960 Али испоставља се да је једна ствар морам да знам 145 00:06:36,960 --> 00:06:41,470 је да сваки ПХП фајл уопште, треба да се почне са неким специјалним синтаксе. 146 00:06:41,470 --> 00:06:44,570 Слично у духу у ХТМЛ, али опет, ПХП је програмски језик, не 147 00:06:44,570 --> 00:06:45,590 маркуп језик. 148 00:06:45,590 --> 00:06:48,700 >> Тако сваки фајл, и некако је глупо гледа ћу признати. 149 00:06:48,700 --> 00:06:50,480 Отворите носач, знак питања, ПХП. 150 00:06:50,480 --> 00:06:53,060 И то је само начин језичка каже, 151 00:06:53,060 --> 00:06:58,400 хеј, рачунар долази неки код написана на језику који се зове ПХП-а. 152 00:06:58,400 --> 00:07:01,900 А онда на самом крају свог фајла, радите врсту врсту супротно. 153 00:07:01,900 --> 00:07:04,860 Не опет само пишете, ПХП, те урадите знак питања, угаона заграда. 154 00:07:04,860 --> 00:07:08,500 И онда шта сте ставили унутра ова два ознаке, да тако кажем, 155 00:07:08,500 --> 00:07:11,490 ће бити, или би требало да буде, ПХП код. 156 00:07:11,490 --> 00:07:13,180 >> Дакле, хајде да урадимо нешто супер једноставна. 157 00:07:13,180 --> 00:07:19,370 Ја идем напред и уради принт деф здраво свет, косих н спасити. 158 00:07:19,370 --> 00:07:27,310 И сада у мојој линији, ја ћу до, маке хелло-- не, ја ћу да радим, 159 00:07:27,310 --> 00:07:28,726 тачка сласх здраво. 160 00:07:28,726 --> 00:07:31,250 Не, тачка коса црта, ХМ. 161 00:07:31,250 --> 00:07:32,990 Тако нешто је другачија. 162 00:07:32,990 --> 00:07:36,920 И заиста, ово је кључна разлика између ПХП и језика попут Ц. Ц 163 00:07:36,920 --> 00:07:38,730 био је тзв саставио језика. 164 00:07:38,730 --> 00:07:40,929 Шта то значи за Ц да се саставио? 165 00:07:40,929 --> 00:07:41,970 Шта је импликација? 166 00:07:41,970 --> 00:07:42,898 Да. 167 00:07:42,898 --> 00:07:45,220 >> ПУБЛИКА: пише се у машински код па се може управља рачунар. 168 00:07:45,220 --> 00:07:46,011 >> СПЕАКЕР 1: Тачно. 169 00:07:46,011 --> 00:07:49,075 Морамо прво претворити у такозвана машина код, нуле и јединице, 170 00:07:49,075 --> 00:07:51,950 пре него што ће заправо бити извршна и разуме рачунара. 171 00:07:51,950 --> 00:07:52,840 По Интел Инсиде. 172 00:07:52,840 --> 00:07:54,530 До ЦПУ унутар рачунара. 173 00:07:54,530 --> 00:07:58,170 ПХП, с друге стране, је оно што се зове тумачи језик, који 174 00:07:58,170 --> 00:08:02,230 значи да га не саставити у нуле и јединице, машински код, 175 00:08:02,230 --> 00:08:04,360 уместо тога га оставити као изворног кода. 176 00:08:04,360 --> 00:08:08,130 А ви уместо да га прође као инпут са програмом, преводилац 177 00:08:08,130 --> 00:08:11,960 да је неко други написао пре неколико година да га разуме 178 00:08:11,960 --> 00:08:14,310 ред по ред, знак за карактер. 179 00:08:14,310 --> 00:08:16,120 Другим речима, људи тамо написао 180 00:08:16,120 --> 00:08:19,670 програм који ће изгледати на вашем код ред по ред, 181 00:08:19,670 --> 00:08:21,680 и схватити шта рачунар треба да уради, 182 00:08:21,680 --> 00:08:25,960 без њеног конвертовања директно нула и јединица. 183 00:08:25,960 --> 00:08:28,370 >> Дакле, ако се види фор петљу, овај такозвани преводилац 184 00:08:28,370 --> 00:08:30,630 ће бити као, у реду, требало би да уради нешто изнова и изнова. 185 00:08:30,630 --> 00:08:31,150 Шта да радим? 186 00:08:31,150 --> 00:08:32,159 Дозволите ми да погледамо следећи ред. 187 00:08:32,159 --> 00:08:33,367 Дозволите ми да погледамо следећи ред. 188 00:08:33,367 --> 00:08:35,350 И заиста то тумачи линију по линију. 189 00:08:35,350 --> 00:08:37,220 Тако да га изврши, не користим маке. 190 00:08:37,220 --> 00:08:39,409 Ја не користим дот сласх у овом случају. 191 00:08:39,409 --> 00:08:43,530 Ја радим уместо ПХП, која је назив програма, а.к.а. 192 00:08:43,530 --> 00:08:46,562 Тумач, то је унапред инсталиран у ЦС50 ИДЕ, 193 00:08:46,562 --> 00:08:48,770 и сад треба да прође командна линија аргумент који 194 00:08:48,770 --> 00:08:52,290 је једноставно име од филе да желим да тумаче. 195 00:08:52,290 --> 00:08:54,740 Или више лежерно, да желим да бежим. 196 00:08:54,740 --> 00:08:57,000 И ако сам погодио Ентер, тамо смо га. 197 00:08:57,000 --> 00:08:57,825 Здраво Свете. 198 00:08:57,825 --> 00:08:59,950 Сада испада да сам Половни штампање Деф намерно 199 00:08:59,950 --> 00:09:01,600 да нас мост од Ц до ПХП. 200 00:09:01,600 --> 00:09:05,150 Већина ПХП програмери, као што ћете видети, не труди се користи за штампање Деф. 201 00:09:05,150 --> 00:09:08,290 Они су само користили функцију која се зове штампа, а која није имала. 202 00:09:08,290 --> 00:09:11,390 И тако, ако сам га поново покренути сада, то заиста се понаша функционално исто. 203 00:09:11,390 --> 00:09:13,730 Ја не могу користити одсто а и процент и и тако даље, 204 00:09:13,730 --> 00:09:16,250 али постоје и други начини у ПХП на то да радиш. 205 00:09:16,250 --> 00:09:18,100 Али ово је само кажу да синтактички, 206 00:09:18,100 --> 00:09:21,850 осим неких чудних ствари Топ, а неки уврнути ликови довн 207 00:09:21,850 --> 00:09:25,960 на дну, концепти сада од програмирање у овом другом језику 208 00:09:25,960 --> 00:09:27,860 ће бити потпуно исти. 209 00:09:27,860 --> 00:09:30,120 >> У ствари, хајде да урадимо један пример. 210 00:09:30,120 --> 00:09:32,520 Зато ћу ићи напред и затворите ову слику. 211 00:09:32,520 --> 00:09:37,740 Дозволите ми да створе још један који Зваћу услове 1 тачка ПХП. 212 00:09:37,740 --> 00:09:40,770 Дакле, без нула, јер оно што сам урадио Погледао сам био вратио пре неколико недеља, 213 00:09:40,770 --> 00:09:43,490 имали смо фајл који се зове Услови 1 тачка Ц А шта 214 00:09:43,490 --> 00:09:47,590 Ја сам га нисам претворена у мом глава, и овде на папиру, 215 00:09:47,590 --> 00:09:51,290 и ускоро на курс је сајт, ред по ред у ПХП. 216 00:09:51,290 --> 00:09:55,520 >> Дакле, у Ц верзији, ми смо урадили нешто као стринг а добија се низ. 217 00:09:55,520 --> 00:09:58,200 Дакле, то је мало другачије да то уради у ПХП. 218 00:09:58,200 --> 00:10:01,390 Уместо тога, ја ћу да раде, односно, ја 219 00:10:01,390 --> 00:10:05,870 Можда су урадили инт добија се ИНТ, у овом примеру раније. 220 00:10:05,870 --> 00:10:12,600 Дакле, уместо тога, ја ћу да урадим н бива прочитао линију, волео бих цео број, 221 00:10:12,600 --> 00:10:13,670 Molimo vas. 222 00:10:13,670 --> 00:10:15,110 Дакле, ово је само моје брз. 223 00:10:15,110 --> 00:10:17,260 И тако се испоставило, и Ја бих само знати 224 00:10:17,260 --> 00:10:20,480 из сте прочитали или видели функцију пре, прочитајте линије функције у ПХП 225 00:10:20,480 --> 00:10:23,810 узима аргумент да је упит за човека, и његову сврху у животу 226 00:10:23,810 --> 00:10:26,220 је да чита линију текста да он или она врсте у. 227 00:10:26,220 --> 00:10:29,160 А онда чува да Текст у променљиве н. 228 00:10:29,160 --> 00:10:32,200 >> И сада можда желети да уради нешто као ја пре неколико недеља, у недељу као 229 00:10:32,200 --> 00:10:33,290 један од класе. 230 00:10:33,290 --> 00:10:36,600 Ако је н је већи од нула, онда, ја идем 231 00:10:36,600 --> 00:10:42,930 да позајмим ту синтаксу смо управо видели, штампа Деф, изабрао си позитиван број, 232 00:10:42,930 --> 00:10:44,360 обрнута коса црта бр. 233 00:10:44,360 --> 00:10:49,990 Иф н једнако једнак нули, ја сам ће да иде напред и рећи, штампање Деф, 234 00:10:49,990 --> 00:10:54,090 си изабрао нула инверзна коса црта н. 235 00:10:54,090 --> 00:10:56,830 Иначе, овде случај треба наравно бити штампани Деф, 236 00:10:56,830 --> 00:10:58,620 си изабрао негативан број. 237 00:10:58,620 --> 00:11:00,970 >> И сигурно можемо имплементирати логика ове ствари 238 00:11:00,970 --> 00:11:03,390 у гомилу различитих начине, али поента овде 239 00:11:03,390 --> 00:11:07,210 да синтактички, једва нешто ново. 240 00:11:07,210 --> 00:11:09,830 То је само знак долар и нова функција и прочитајте линија. 241 00:11:09,830 --> 00:11:12,090 Али у основи, шта има ново Тренутно је сам тумачење ово. 242 00:11:12,090 --> 00:11:13,910 Ја то пролази као инпут у други програм. 243 00:11:13,910 --> 00:11:16,620 Дакле, ако желим да покренете ово, ако Ја нисам направио неку грешку, 244 00:11:16,620 --> 00:11:20,140 Идем да покренете ПХП, од Услови 1 тачка ПХП Ентер, 245 00:11:20,140 --> 00:11:23,440 Идем да унесете у броју 50, и претпоставимо за сада ради. 246 00:11:23,440 --> 00:11:25,940 Зато што је логика је иста ствар као и недељу дана један. 247 00:11:25,940 --> 00:11:28,020 >> У реду, тако да је прилично ундервхелминг, зар не? 248 00:11:28,020 --> 00:11:30,240 Могли би ово на било број језика. 249 00:11:30,240 --> 00:11:33,200 Хајде да урадимо нешто тако моћнији. 250 00:11:33,200 --> 00:11:35,610 Хајде да завршимо проблема сет пет. 251 00:11:35,610 --> 00:11:37,370 Зато ћу ићи напред и учинити. 252 00:11:37,370 --> 00:11:42,920 Ја ћу створити датотеку зове рјечник тачка ПХП 253 00:11:42,920 --> 00:11:45,424 и склони као што може бити за пењање доле много бележака, 254 00:11:45,424 --> 00:11:47,340 белешке ће само помоћи ти ако дозвољено 255 00:11:47,340 --> 00:11:48,923 да спроведе проблеми сет пет у ПХП. 256 00:11:48,923 --> 00:11:52,706 Али видећемо колико брзо ћемо сад може да примени ту исту проблем сет. 257 00:11:52,706 --> 00:11:56,830 >> Дакле, у речнику дот ПХП-у, ја ћу претпоставити да већ постоји 258 00:11:56,830 --> 00:11:58,514 фајл у свету под називом спеллер. 259 00:11:58,514 --> 00:12:01,430 И заиста, ја сам то унапред, и нећемо проћи кроз ову линију 260 00:12:01,430 --> 00:12:03,596 линије, али ако сте радознао касније и заиста желе 261 00:12:03,596 --> 00:12:06,250 да ће завршити свој ум Ароунд тхе разлике између ц и ПХП, 262 00:12:06,250 --> 00:12:09,030 буквално поредити ову слику, спеллер, из данашње изворног кода 263 00:12:09,030 --> 00:12:11,190 да ћемо писати касније Данас, против п сет 264 00:12:11,190 --> 00:12:15,309 пет спеллер тачка Ц коју смо вам дати, и то је готово иста ред по ред. 265 00:12:15,309 --> 00:12:16,600 Има неких више долара знакове. 266 00:12:16,600 --> 00:12:18,330 Неколико функције су мало другачије. 267 00:12:18,330 --> 00:12:20,038 Али то је добар начин од врста виде како 268 00:12:20,038 --> 00:12:22,740 ли превести једног језика на други. 269 00:12:22,740 --> 00:12:24,812 И то је готово идентичан линија за линију. 270 00:12:24,812 --> 00:12:27,770 Али ја ћу претпоставити да је постоји, и шта ћу да радим овде 271 00:12:27,770 --> 00:12:31,310 је покушао да разнесе свој уму реимплементинг 272 00:12:31,310 --> 00:12:36,210 целина проблема сет пет пут брже него што сте радили до сада. 273 00:12:36,210 --> 00:12:39,330 Тако, на пример, ја ћу први прогласити глобалну променљиву под називом величина, 274 00:12:39,330 --> 00:12:40,444 и подесите га једнака нули. 275 00:12:40,444 --> 00:12:41,610 Сада то није много уштеде. 276 00:12:41,610 --> 00:12:44,170 Квота да ли спроводе Величина прилично исти, 277 00:12:44,170 --> 00:12:48,440 или наговештај наговештај, ће вечерас или сутра, само користећи глобалну променљиву названу 278 00:12:48,440 --> 00:12:49,900 величина, и постављање га једнака нули. 279 00:12:49,900 --> 00:12:52,660 То није нарочито невероватно спојлер. 280 00:12:52,660 --> 00:12:57,180 >> Дакле, шта су ваши подаци структуре избор, они од вас који су кренуо је 281 00:12:57,180 --> 00:13:02,170 и прочитати спецификацију, структуре података које су већина вас су користили? 282 00:13:02,170 --> 00:13:06,840 Хеш табела или пробајте, можда неке варијанте њихове. 283 00:13:06,840 --> 00:13:10,490 Дакле, спровођење тараба сто барем, је врста много линија кода, 284 00:13:10,490 --> 00:13:10,990 jel tako? 285 00:13:10,990 --> 00:13:13,700 И нису сви од њих може бити функционалан у овом тренутку у недељи, 286 00:13:13,700 --> 00:13:14,366 али то је у реду. 287 00:13:14,366 --> 00:13:19,300 Јер у ПХП-у, ако Желим хасх табелу, урађено. 288 00:13:19,300 --> 00:13:20,260 Jel tako? 289 00:13:20,260 --> 00:13:22,610 Дакле, ту променљиву да сам Само проглашен је очигледно 290 00:13:22,610 --> 00:13:26,180 зове знак долара сто, по уводу пре. 291 00:13:26,180 --> 00:13:28,902 >> Али стварно само желим, на крај дана, низ. 292 00:13:28,902 --> 00:13:31,610 Али није бројчано индексиране Арраи, јер то је као недељу две 293 00:13:31,610 --> 00:13:33,440 ствари, када смо разговарали о низовима. 294 00:13:33,440 --> 00:13:34,850 Желим хасх табелу. 295 00:13:34,850 --> 00:13:38,070 Али хасх сто је заиста само конкретан начин да се каже, 296 00:13:38,070 --> 00:13:40,190 желите асоцијативну низ. 297 00:13:40,190 --> 00:13:43,270 Желите да будете у стању да сарадник тастера са вредностима. 298 00:13:43,270 --> 00:13:44,200 Тастери са вредностима. 299 00:13:44,200 --> 00:13:45,640 Шта је рјечник, стварно? 300 00:13:45,640 --> 00:13:47,080 Па то је гомила тастера. 301 00:13:47,080 --> 00:13:50,320 Речи као што су јабука, крушка, банана и, и сви ови енглеских речи 302 00:13:50,320 --> 00:13:51,490 да смо те предати. 303 00:13:51,490 --> 00:13:54,820 >> А вредности које ефективно си убаците у свој речник 304 00:13:54,820 --> 00:13:57,790 су или истина, или одсуство, лажна. 305 00:13:57,790 --> 00:14:00,540 Другим речима уносите гомила кључних вредности парова, 306 00:14:00,540 --> 00:14:03,720 јабука, истина, крушка, истина, банане, истина. 307 00:14:03,720 --> 00:14:07,446 Тако да када преузимате или потражите до тих података у вашем хасх табеле 308 00:14:07,446 --> 00:14:10,070 са контролном функцијом, ти си Или да се вратимо одговор, 309 00:14:10,070 --> 00:14:13,260 Да, нашао сам га у свом комплексу хасх табелу, или не, није тамо, 310 00:14:13,260 --> 00:14:14,540 тако да ретурн фалсе. 311 00:14:14,540 --> 00:14:19,440 >> Тако да то, све што треба је податак структура као и сам предложио раније. 312 00:14:19,440 --> 00:14:22,050 Само треба да буду способни на удруживање речи 313 00:14:22,050 --> 00:14:25,570 као, под знацима навода, симбол, са вредношћу као што је, истина. 314 00:14:25,570 --> 00:14:27,090 Тако да је мој хеш табеле. 315 00:14:27,090 --> 00:14:28,180 Хајде да заправо га користити. 316 00:14:28,180 --> 00:14:30,310 Дакле, постоји неколико функција Морам да спроведе. 317 00:14:30,310 --> 00:14:33,300 Ја идем напред и уједају Офф функцију која се зове величине. 318 00:14:33,300 --> 00:14:34,390 Она не узима никакве аргументе. 319 00:14:34,390 --> 00:14:36,660 Не треба да бринемо с реч, празнина, ПХП-у. 320 00:14:36,660 --> 00:14:38,770 Једноставно ћу да се врате величину. 321 00:14:38,770 --> 00:14:41,287 >> И успут, ПХП има ово минорли досадне детаљ, 322 00:14:41,287 --> 00:14:44,620 где ако нешто није глобална, морате да реци функцију у којој сте помоћу 323 00:14:44,620 --> 00:14:46,220 да, хеј, то је глобална променљива. 324 00:14:46,220 --> 00:14:49,330 Дакле, мала глупост, али ти морам да урадим ипак. 325 00:14:49,330 --> 00:14:50,920 >> Дакле, шта је са оптерећењем? 326 00:14:50,920 --> 00:14:52,990 Идем да спроведе функција се зове оптерећење 327 00:14:52,990 --> 00:14:56,790 који се у име речника, баш као у проблему сет пет. 328 00:14:56,790 --> 00:14:59,554 И пре него што наставим, приметити да нисам 329 00:14:59,554 --> 00:15:00,970 је куцање прилично исте ствари. 330 00:15:00,970 --> 00:15:06,060 Шта је очигледно другачија у ПХП око како прогласи функцију у односу Ц? 331 00:15:06,060 --> 00:15:06,616 Да. 332 00:15:06,616 --> 00:15:07,490 ПУБЛИКА: [неразумљиво] 333 00:15:07,490 --> 00:15:08,573 СПЕАКЕР 1: Не повратни тип. 334 00:15:08,573 --> 00:15:12,350 И заиста, то је случај ПХП утолико што је лабаво откуцан, 335 00:15:12,350 --> 00:15:14,190 је такође мало аљкави у том смислу. 336 00:15:14,190 --> 00:15:17,680 Не прецизира као програмер шта је ово функција враћа. 337 00:15:17,680 --> 00:15:20,490 Морали бисте да заправо изгледају у коду да то схватим. 338 00:15:20,490 --> 00:15:22,670 Или прочитајте коментаре или документација. 339 00:15:22,670 --> 00:15:24,870 Тако плусева и минуса од овакве одлуке. 340 00:15:24,870 --> 00:15:26,750 Али морам да кажем кључна реч, функција. 341 00:15:26,750 --> 00:15:28,360 А када смо сазнали Јавасцрипт за неколико недеља 342 00:15:28,360 --> 00:15:31,026 идемо да видимо исту ствар опет, али то је иста идеја. 343 00:15:31,026 --> 00:15:34,220 Назив функције, њен аргумент или аргументи или недостатак истог, и сада 344 00:15:34,220 --> 00:15:35,630 Овде је имплементација. 345 00:15:35,630 --> 00:15:38,860 >> Зато ћу да смањи неке углове само да буде драматична за тренутак. 346 00:15:38,860 --> 00:15:40,485 Али ја ћу да наставим и кажем. 347 00:15:40,485 --> 00:15:44,890 Ово је како могу учитати фајл у низ. 348 00:15:44,890 --> 00:15:47,580 Постоји функција у ПХП зове фајл. 349 00:15:47,580 --> 00:15:49,300 Ви то име датотеке руку. 350 00:15:49,300 --> 00:15:53,950 То вам руке назад низ, унутра од којих је свака линија из датотеке. 351 00:15:53,950 --> 00:15:56,480 Од нула, један, на горе да н минус 1 линија. 352 00:15:56,480 --> 00:15:57,210 То је то, зар не? 353 00:15:57,210 --> 00:15:57,990 Нема Ф штиво. 354 00:15:57,990 --> 00:15:58,826 Нема м гет а. 355 00:15:58,826 --> 00:15:59,700 Нема одсто а. 356 00:15:59,700 --> 00:16:00,420 Нема главобоље. 357 00:16:00,420 --> 00:16:01,220 Нема феоф. 358 00:16:01,220 --> 00:16:03,950 Све те ствари са којима сте врестлинг можда, 359 00:16:03,950 --> 00:16:06,550 уз п сет четири и пет, одлази. 360 00:16:06,550 --> 00:16:09,450 >> Дакле, управо сам прочитао те линије у датотеку, а затим знаш шта? 361 00:16:09,450 --> 00:16:15,510 Ако желим да поновити над тим речима, Ја могу да урадим, за сваки линије као линије. 362 00:16:15,510 --> 00:16:19,992 Не заборавите да је ово нека врста паметан начин итератинг преко низа, индекс 363 00:16:19,992 --> 00:16:25,090 индексом, а на сваком итерација позиве тренутна линија, знак долара линија. 364 00:16:25,090 --> 00:16:31,560 И овде ћу да одем и кажу табела, носач, линија, добија тачно. 365 00:16:31,560 --> 00:16:35,880 >> Другим речима, ово је колико ја инсерт инто ми хасх табеле у ПХП. 366 00:16:35,880 --> 00:16:38,740 Кажем знак доллара сто, који је мој асоцијативна низ који је 367 00:16:38,740 --> 00:16:40,690 празна по линији кода до горе. 368 00:16:40,690 --> 00:16:42,790 Онда сам индекса у њу не, употребљавајући велики број, 369 00:16:42,790 --> 00:16:45,300 али буквално користећи кључна реч која ми је стало. 370 00:16:45,300 --> 00:16:47,730 Можда је јабука или крушка или банана или шта год, 371 00:16:47,730 --> 00:16:51,645 али конкретно ја индексирање у њега као да је предложио раније. 372 00:16:51,645 --> 00:16:53,770 Ја се име моје асоцијативна низ, а онда сам 373 00:16:53,770 --> 00:16:56,450 користити под знацима навода у угласте заграде са низом, 374 00:16:56,450 --> 00:16:58,490 уместо стварног броја. 375 00:16:58,490 --> 00:17:00,250 >> И то је то. 376 00:17:00,250 --> 00:17:01,720 Функција оптерећење се врши. 377 00:17:01,720 --> 00:17:05,119 Када то петље итерацију, ја сам ставио све у хасх табеле. 378 00:17:05,119 --> 00:17:07,810 Сада мала одрицање, ту је Пар ствари које не треба да поправи. 379 00:17:07,810 --> 00:17:10,030 И верзија ја ћу писати на мрежи ће имати све нијансе, 380 00:17:10,030 --> 00:17:12,670 али углавном само ће бити неки Провера грешке и неколико мањих туеакс. 381 00:17:12,670 --> 00:17:14,044 Али то је заиста суштина. 382 00:17:14,044 --> 00:17:16,750 Ако сада желим да спроведе функција зове 383 00:17:16,750 --> 00:17:19,869 цхецк, која очекује Реч као свог аргумента, 384 00:17:19,869 --> 00:17:22,099 Како могу да то урадили? 385 00:17:22,099 --> 00:17:30,020 Па, ја једноставно рећи, ако у мом столу, на локацији речи, 386 00:17:30,020 --> 00:17:30,652 ако је постављена. 387 00:17:30,652 --> 00:17:32,360 Дакле, ако постоји је- Заправо, знаш шта? 388 00:17:32,360 --> 00:17:34,830 Ја ћу то урадити у мало псеудокоду. 389 00:17:34,830 --> 00:17:36,020 Али идеја је иста. 390 00:17:36,020 --> 00:17:41,640 Ако је једнако тачно, ретурн труе. 391 00:17:41,640 --> 00:17:43,890 У реду. 392 00:17:43,890 --> 00:17:46,851 Елсе-- можете некако видим где ово је гоинг-- да се врати лажна. 393 00:17:46,851 --> 00:17:47,350 Готово. 394 00:17:47,350 --> 00:17:49,640 Проверите врши. 395 00:17:49,640 --> 00:17:50,940 >> Лепо, зар не? 396 00:17:50,940 --> 00:17:52,560 И шта је то заиста циљате? 397 00:17:52,560 --> 00:17:53,680 И ово превише, одсекао сам неке углове. 398 00:17:53,680 --> 00:17:56,020 Погледајте верзију на мрежи за све благе нијансе. 399 00:17:56,020 --> 00:17:57,103 Али то је суштина. 400 00:17:57,103 --> 00:17:59,080 Индекс у своју асоцијативна низ, а.к.а. 401 00:17:59,080 --> 00:18:02,910 Хасх табела, видим да има вредност тамо, ако је постављено на тачно, и ако је тако, 402 00:18:02,910 --> 00:18:03,930 ретурн труе. 403 00:18:03,930 --> 00:18:05,819 Тако смо сведено све сложености. 404 00:18:05,819 --> 00:18:07,110 Тако некако ума пуше, зар не? 405 00:18:07,110 --> 00:18:09,680 Нећу се трудити да се завршава истовара, јер у фацт-- Ох, знаш шта? 406 00:18:09,680 --> 00:18:11,620 Да, хајде да завршимо са истовара. 407 00:18:11,620 --> 00:18:18,940 >> Истовар у хасх табели може изгледати као функције истовара, вратите. 408 00:18:18,940 --> 00:18:19,930 У реду, тако да је искрцавање. 409 00:18:19,930 --> 00:18:21,350 Јер нема ништа за истовар, зар не? 410 00:18:21,350 --> 00:18:22,170 Нема маллоц. 411 00:18:22,170 --> 00:18:24,280 Нисам експлицитно питати оперативни систем за све. 412 00:18:24,280 --> 00:18:25,571 Управо сам почео да користим променљиве. 413 00:18:25,571 --> 00:18:30,510 И тако је и ово манифестација карактеристике језика вишем нивоу. 414 00:18:30,510 --> 00:18:32,940 Па опет, највећи део овог термина смо посла овде 415 00:18:32,940 --> 00:18:34,280 са Ц. супер ниском нивоу. 416 00:18:34,280 --> 00:18:35,980 Можете видети меморију рачунара. 417 00:18:35,980 --> 00:18:38,440 Можете дирај ти Желим у РАМ рачунара, 418 00:18:38,440 --> 00:18:39,440 за боље или горе. 419 00:18:39,440 --> 00:18:41,760 >> Овде, идемо да се одрекну ту моћ. 420 00:18:41,760 --> 00:18:44,730 Али мој бог, види како много мање код сам написао. 421 00:18:44,730 --> 00:18:47,660 У ствари, ако не причали и разговор преко моје куцање, 422 00:18:47,660 --> 00:18:50,190 били бисмо урадили са Овај пример пре пет минута. 423 00:18:50,190 --> 00:18:52,150 Дакле, шта је цена се плаћа? 424 00:18:52,150 --> 00:18:54,100 Па хајде да погледамо. 425 00:18:54,100 --> 00:18:55,340 Хајде да погледамо. 426 00:18:55,340 --> 00:18:59,340 Ја ћу да наставим и покрените ЦС50. 427 00:18:59,340 --> 00:19:02,160 Дозволите ми да прво одем у данашњи примери где 428 00:19:02,160 --> 00:19:03,970 Имам Текстови Адресар као и раније. 429 00:19:03,970 --> 00:19:08,520 Идем да покренете решење које долази са проблема сет пет зове 430 00:19:08,520 --> 00:19:11,190 спеллер, што је у рачуну ЦС50 је. 431 00:19:11,190 --> 00:19:14,040 >> И ја ћу да га воде на нешто велика попут Кинг Јамес Библе, 432 00:19:14,040 --> 00:19:16,547 тако да смо заиста ставио особља решења теста. 433 00:19:16,547 --> 00:19:19,130 Сада понекад интернет је мало спорији, мало брже, 434 00:19:19,130 --> 00:19:20,338 Можда потрајати да се крећете. 435 00:19:20,338 --> 00:19:23,730 Али то је укупно .56 секунди да провери правопис Тхе Кинг Јамес 436 00:19:23,730 --> 00:19:25,150 Библија користе решење особља. 437 00:19:25,150 --> 00:19:25,620 Дакле, прилично добро. 438 00:19:25,620 --> 00:19:27,786 Ваш можда много спорије, и то је потпуно у реду. 439 00:19:27,786 --> 00:19:30,090 Али, тачно је овде. 440 00:19:30,090 --> 00:19:32,440 Дакле, то је решење особље. 441 00:19:32,440 --> 00:19:34,785 Ако одем у и почистити ПХП верзију. 442 00:19:34,785 --> 00:19:36,990 И ја ћу мало да радим као печење схов ствар. 443 00:19:36,990 --> 00:19:39,720 Идемо да се код сам написао раније, тако да је сасвим у праву. 444 00:19:39,720 --> 00:19:42,678 Зато што је код сам написао не иде да будем потпуно коректан сада. 445 00:19:42,678 --> 00:19:47,310 Али, ако трчим ПХП верзије, шта морам да одустанем данас? 446 00:19:47,310 --> 00:19:49,980 Требало ми је пет минута да имплементирати стр сет пет, ја тврдим. 447 00:19:49,980 --> 00:19:51,770 Коју цену сам платио? 448 00:19:51,770 --> 00:19:52,270 Да. 449 00:19:52,270 --> 00:19:52,937 >> ПУБЛИКА: Брзина. 450 00:19:52,937 --> 00:19:53,645 СПЕАКЕР 1: Брзина. 451 00:19:53,645 --> 00:19:54,380 Шта мислите? 452 00:19:54,380 --> 00:19:55,230 >> ПУБЛИКА: То ће потрајати дуже. 453 00:19:55,230 --> 00:19:55,660 >> СПЕАКЕР 1: Добро. 454 00:19:55,660 --> 00:19:56,160 Хајде да видимо. 455 00:19:56,160 --> 00:19:59,590 То ће потрајати дуже, да не пишем, али да га покренете. 456 00:19:59,590 --> 00:20:00,090 Да. 457 00:20:00,090 --> 00:20:00,960 Дакле, хајде да пробамо ово. 458 00:20:00,960 --> 00:20:05,720 Дакле, овде ћу да наставим и да ПХП-у спеллер, и зато што је досије 459 00:20:05,720 --> 00:20:06,360 зове спеллер. 460 00:20:06,360 --> 00:20:07,580 Дакле, ја не водим рјечник, опозив, 461 00:20:07,580 --> 00:20:09,204 Ја водим програм под називом спеловала. 462 00:20:09,204 --> 00:20:12,450 Ја ћу проћи на исти фајл, краљ Џејмс пети. 463 00:20:12,450 --> 00:20:14,377 То је лети. 464 00:20:14,377 --> 00:20:17,210 Ово би могао бити само Интернет брзина, тако да не читају превише у то. 465 00:20:17,210 --> 00:20:21,680 Али то не осећа више сигурно. 466 00:20:21,680 --> 00:20:23,280 1.26 секунди. 467 00:20:23,280 --> 00:20:25,150 >> Сада када је још увек прилично проклето брзо, зар не? 468 00:20:25,150 --> 00:20:28,140 И једини разлог због којег осјећао као више као три или четири, или пет 469 00:20:28,140 --> 00:20:30,515 секунди, то је само зато што интернет је био спор. 470 00:20:30,515 --> 00:20:33,980 Компјутер Време проведено је 1,26 секунди, у односу Мислим 0,56. 471 00:20:33,980 --> 00:20:35,880 Дакле, више него дупло спорији. 472 00:20:35,880 --> 00:20:39,170 Сада када је још увек прилично проклето брз, али је манифестација 473 00:20:39,170 --> 00:20:40,860 од, заиста, да тачна цена. 474 00:20:40,860 --> 00:20:43,460 >> Зато што смо тумачење у линији кода по линију, 475 00:20:43,460 --> 00:20:46,740 и тај програм тект чита моја код врха до дна, с лева на десно, 476 00:20:46,740 --> 00:20:47,940 то мора да уради више размишљања. 477 00:20:47,940 --> 00:20:50,430 Она мора да некако претворити да унутар себе 478 00:20:50,430 --> 00:20:53,464 у одговарајући машину код на лету, да тако кажем, 479 00:20:53,464 --> 00:20:55,380 иако механике су мало другачије. 480 00:20:55,380 --> 00:20:59,430 Уместо да само храњење до АМД ЦПУ сирове нуле и јединице 481 00:20:59,430 --> 00:21:00,930 да је изворно разуме. 482 00:21:00,930 --> 00:21:04,110 >> Дакле, апсолутно, изреако, смо платили цену. 483 00:21:04,110 --> 00:21:09,120 И код написан у језику као ПХП тежи да буде спорији. 484 00:21:09,120 --> 00:21:10,050 Али мој бог. 485 00:21:10,050 --> 00:21:12,740 Дакле, сада када сам провери правопис мој Филе, проводим додатних 0,7 486 00:21:12,740 --> 00:21:17,280 или тако секунде вс 20 сати за имплементацију бржи спелл ​​цхецкер, зар не? 487 00:21:17,280 --> 00:21:18,397 То је нека врста трговине офф. 488 00:21:18,397 --> 00:21:20,980 А ако сте тек почиње п сет пет, можда неће бити 20 сати. 489 00:21:20,980 --> 00:21:22,188 Може бити много мање од тога. 490 00:21:22,188 --> 00:21:23,600 Али то је компромис, стварно. 491 00:21:23,600 --> 00:21:27,820 А ако користите код на заиста велики сетови података, или чак и старијим хардвером, 492 00:21:27,820 --> 00:21:32,650 оне врсте различитости свакако може сабрати. 493 00:21:32,650 --> 00:21:34,880 >> Има ли питања до сада? 494 00:21:34,880 --> 00:21:35,617 Да. 495 00:21:35,617 --> 00:21:36,492 >> ПУБЛИКА: [неразумљиво] 496 00:21:36,492 --> 00:21:38,187 497 00:21:38,187 --> 00:21:39,978 СПЕАКЕР 1: Опростите, могу ви то кажете још једном? 498 00:21:39,978 --> 00:21:40,853 ПУБЛИКА: [неразумљиво] 499 00:21:40,853 --> 00:21:43,326 500 00:21:43,326 --> 00:21:44,700 СПЕАКЕР 1: Дајете време. 501 00:21:44,700 --> 00:21:45,283 Па, тако да. 502 00:21:45,283 --> 00:21:47,322 Ви штеди време тако не морате да га саставе, 503 00:21:47,322 --> 00:21:48,530 ако је то оно што питаш. 504 00:21:48,530 --> 00:21:50,710 И заиста, у ЦС50, већина програма, 505 00:21:50,710 --> 00:21:53,668 иако они могу да потраје да пишу, они су релативно кратак. 506 00:21:53,668 --> 00:21:56,860 Неколико десетина, неколико стотина линија кода, па су саставити прилично брзо. 507 00:21:56,860 --> 00:21:58,470 Али када почнете писање веће програме, 508 00:21:58,470 --> 00:22:01,511 као да сте Мицрософт или сте Гоогле и писање заиста велики програми 509 00:22:01,511 --> 00:22:05,360 ин Ц, или Ц ++, или слично саставио језици, могао да многе секунди, 510 00:22:05,360 --> 00:22:08,577 или чак минута или дуже како састави милионе линија кода. 511 00:22:08,577 --> 00:22:10,660 И тамо, да Разлика ће се сабрати. 512 00:22:10,660 --> 00:22:12,840 >> И, у ствари, када смо транзиција данас, истог дана 513 00:22:12,840 --> 00:22:15,910 Данас, на веб програмирање користећи ПХП, ти си 514 00:22:15,910 --> 00:22:18,460 ће га наћи само толико више угодно да пишем код 515 00:22:18,460 --> 00:22:21,501 када не треба да урадите ово глупо кораци као што је промена у вашем терминалу 516 00:22:21,501 --> 00:22:24,202 прозор, тип Марка здраво, поново покрените га, поново прозор. 517 00:22:24,202 --> 00:22:25,910 Само толико глупи механичке кораци који 518 00:22:25,910 --> 00:22:28,480 Управо сам стигао у начином занимљиво, забава рад. 519 00:22:28,480 --> 00:22:31,450 И заиста бацамо да извуку са ПХП. 520 00:22:31,450 --> 00:22:34,960 И можемо да интеракцију с тим брже. 521 00:22:34,960 --> 00:22:35,495 Да. 522 00:22:35,495 --> 00:22:36,370 ПУБЛИКА: [неразумљиво] 523 00:22:36,370 --> 00:22:40,294 524 00:22:40,294 --> 00:22:40,960 СПЕАКЕР 1: Наравно. 525 00:22:40,960 --> 00:22:42,876 Могу ли појаснити шта је то значи да се тумачи? 526 00:22:42,876 --> 00:22:45,870 Када састави језик као Ц, иде доле 527 00:22:45,870 --> 00:22:48,140 као што смо рекли машине код, нуле и јединице. 528 00:22:48,140 --> 00:22:51,860 И Интел одлучио пре неколико година да неки обрасци нула и јединица 529 00:22:51,860 --> 00:22:56,220 представљају сабирање, одузимање или, или штампање, и друге основне операције. 530 00:22:56,220 --> 00:23:00,250 У свету као тумачи језика као ПХП, ЈаваСцрипт или, или Питхон, 531 00:23:00,250 --> 00:23:03,120 или Руби, или гомиле други, уместо неко 532 00:23:03,120 --> 00:23:05,120 написао је интерпретер-- у овом случају, 533 00:23:05,120 --> 00:23:09,770 то је такође зове ПХП идентичан назив лангуаге-- да у суштини 534 00:23:09,770 --> 00:23:13,840 има велику петљу у њој да Примењује над свим линијама кода 535 00:23:13,840 --> 00:23:18,170 да га храним као улаз, као и здраво тачка ПХП или рјечник тачка ПХП. 536 00:23:18,170 --> 00:23:21,760 >> А онда можете мислити на њихов велики петље као да има много услова. 537 00:23:21,760 --> 00:23:26,340 А ти услови рећи, ако људски је написао кључну реч за, 538 00:23:26,340 --> 00:23:28,470 почети радити његов или њен Код изнова и изнова. 539 00:23:28,470 --> 00:23:31,360 Или, ако човек има писани линију кода, 540 00:23:31,360 --> 00:23:34,880 ако, само извршавају своје следећи ред условно. 541 00:23:34,880 --> 00:23:37,740 Тако да заиста је као тумачење то на известан људском смислу, ред 542 00:23:37,740 --> 00:23:39,660 линије, и то само треба времена. 543 00:23:39,660 --> 00:23:41,340 Потребно је изнад главе. 544 00:23:41,340 --> 00:23:44,189 И то је прице-- Добро куестион-- плаћамо. 545 00:23:44,189 --> 00:23:46,480 Па хајде да урадимо још једну демонстрацију То је мало више драматична. 546 00:23:46,480 --> 00:23:51,160 Постоји, ја бих, баллпарк ово у од 90% вероватноћа неуспеха страшно, 547 00:23:51,160 --> 00:23:53,869 али ћете бити задивљени са 10% вероватноће. 548 00:23:53,869 --> 00:23:55,660 Дакле, сваке године се трудимо за то, чиме смо 549 00:23:55,660 --> 00:23:59,061 покушати да напише програм који пролази кроз Проблем сет нула, за које сте 550 00:23:59,061 --> 00:24:02,060 достављају своје бројеве телефона и много других демографских информација, 551 00:24:02,060 --> 00:24:06,030 а ми програмски послаћемо вам текстуалну поруку. 552 00:24:06,030 --> 00:24:08,540 А онда свима телефон почиње јавите се сигналом или вибрацијом, 553 00:24:08,540 --> 00:24:11,460 и то је само невероватно, јер Па, погледајте шта компјутери могу да урадим. 554 00:24:11,460 --> 00:24:13,840 >> Ово ретко правилно функционише чини се, у великој мери 555 00:24:13,840 --> 00:24:16,800 јер сам обично иду на црне листе од Гмаил или неке друге услуге 556 00:24:16,800 --> 00:24:19,630 за заправо покушава да уради на скали. 557 00:24:19,630 --> 00:24:24,940 Али чудна ствар је превише, јер смо ми данас немају сви овде, 558 00:24:24,940 --> 00:24:27,690 забава чињеница последњи пут смо покушао овај пре две године, 559 00:24:27,690 --> 00:24:30,870 Мислим да сам написао програм који је седео у петље итератинг 560 00:24:30,870 --> 00:24:34,040 над свим ученицима у разреду, и сваки од њих текстуалне поруке, 561 00:24:34,040 --> 00:24:37,534 и то је нешто слично, зашто ниси у предавању? 562 00:24:37,534 --> 00:24:39,170 Љубав, ЦС50 бот. 563 00:24:39,170 --> 00:24:42,580 >> Немаш појма колико апологетски и нека врста болне емаил 564 00:24:42,580 --> 00:24:46,970 Добио сам одговор од Н минус 100 људи који нису били овде 565 00:24:46,970 --> 00:24:47,960 тог дана. 566 00:24:47,960 --> 00:24:52,116 И још забавнији, више срамна стори-- знате, хајде да га стави тамо. 567 00:24:52,116 --> 00:24:53,740 Већ је он видео пре неколико година. 568 00:24:53,740 --> 00:24:56,810 Дакле, ускоро ћете ме видети при чему пишу фор петљу, 569 00:24:56,810 --> 00:25:00,640 то је врло лако написати грешку у томе фор петља, тако да се први пут 570 00:25:00,640 --> 00:25:02,800 кроз петљу, ви сенд једне текстуалне поруке. 571 00:25:02,800 --> 00:25:06,190 >> Други пут кроз петље И Требало је послао још једну текстуалну поруку, 572 00:25:06,190 --> 00:25:08,250 а онда још један текст Порука, и још један. 573 00:25:08,250 --> 00:25:11,490 Али испоставило се да ако направите куцању кад програмирање, понекад 574 00:25:11,490 --> 00:25:14,460 могу да пишу програме који шаљу један текстуална порука, а затим два текстуалне поруке, 575 00:25:14,460 --> 00:25:18,742 затим три текстуалне поруке свима који је већ добио текстуалну поруку. 576 00:25:18,742 --> 00:25:21,450 А као што знате, радите нешто, плус нешто, плус нешто, 577 00:25:21,450 --> 00:25:25,910 Плус нешто, је велики О на много текстуалних порука, или н на квадрат, 578 00:25:25,910 --> 00:25:29,830 или $ 0.10 текстуална порука, $ 20,000. 579 00:25:29,830 --> 00:25:33,700 >> Срећом сам ударио Цонтрол-Ц пре тога догодило, али нисам дугујем бар један 580 00:25:33,700 --> 00:25:37,550 од ваших претходника $ 20 за 200 неке чудне текстуалне поруке које, 581 00:25:37,550 --> 00:25:40,450 Не само да је његов телефон, али Такође је било старије флип телефона 582 00:25:40,450 --> 00:25:43,520 тако да бих гурнуо из његовог меморија сваки други лични текст 583 00:25:43,520 --> 00:25:45,930 Порука је заправо стечен. 584 00:25:45,930 --> 00:25:49,250 Дакле, имамо један циљ данас, да то не чине. 585 00:25:49,250 --> 00:25:50,620 Можда бисте укључили режим рада у авиону. 586 00:25:50,620 --> 00:25:51,120 У реду. 587 00:25:51,120 --> 00:25:56,590 Дакле, идемо у један Програм овде цалллед-- 588 00:25:56,590 --> 00:25:59,060 да ћу звати текст тачка ПХП. 589 00:25:59,060 --> 00:26:01,074 И унапред, имам два фајла овде. 590 00:26:01,074 --> 00:26:06,030 Направио сам слику за само особље, које има сви Инфо особља, сва имена 591 00:26:06,030 --> 00:26:07,260 са сајта курса је. 592 00:26:07,260 --> 00:26:09,756 А онда, за сада сам ставио неки лажни број 555-1212. 593 00:26:09,756 --> 00:26:11,380 Дакле, ово не би заправо нигде. 594 00:26:11,380 --> 00:26:15,140 Али приметите унутрашњост ове ЦСВ датотеке, којима смо разговарали о кратко пре 595 00:26:15,140 --> 00:26:16,540 у контексту датотеке ИО. 596 00:26:16,540 --> 00:26:18,730 >> Шта је ЦСВ датотека? 597 00:26:18,730 --> 00:26:19,970 Раздвојене зарезом променљиве. 598 00:26:19,970 --> 00:26:24,400 И ово је нешто као веома лаган база података, ако хоћете. 599 00:26:24,400 --> 00:26:28,650 Постоји врста од врста четири колоне У овом фајлу, и тамо разуђена, 600 00:26:28,650 --> 00:26:32,400 али су зарези у суштини представљају колоне у датотеци. 601 00:26:32,400 --> 00:26:35,400 Прва колона је ТФ или име ЦА екипе. 602 00:26:35,400 --> 00:26:37,800 Друга колона је њихово презиме. 603 00:26:37,800 --> 00:26:39,820 Трећа колона је њихов број телефона. 604 00:26:39,820 --> 00:26:44,760 И четврта колона очигледно је- Четврта колона је очигледно шта? 605 00:26:44,760 --> 00:26:45,870 У реду, тако да је њихов носилац. 606 00:26:45,870 --> 00:26:47,180 Дакле, Веризон, Спринт или, или шта не. 607 00:26:47,180 --> 00:26:48,620 И ако сам се погрешно изразио раније, ЦСВ. 608 00:26:48,620 --> 00:26:51,800 Цомма сепаратед валуес ЦСВ је овде. 609 00:26:51,800 --> 00:26:54,260 >> Дакле, шта могу да урадим са овим? 610 00:26:54,260 --> 00:26:56,940 Па ово је само један велики текстуални фајл, и то некако дуго, зар не? 611 00:26:56,940 --> 00:26:58,690 Овако ће се бити нека врста досадне. 612 00:26:58,690 --> 00:27:03,510 И испоставило се, међутим, да ако желите да пошаљете текстуалну поруку, хајде да 613 00:27:03,510 --> 00:27:05,180 кажу Алек овде. 614 00:27:05,180 --> 00:27:09,690 Пусти ме у мом бровсер и изађите из режима целог екрана 615 00:27:09,690 --> 00:27:11,660 само да бих могао да искључи напред и назад. 616 00:27:11,660 --> 00:27:20,280 Испоставило се, да видимо, ако одем у овде, и пријавите се на Гмаил, у реду. 617 00:27:20,280 --> 00:27:22,950 Не гледај у овом делу. 618 00:27:22,950 --> 00:27:23,880 Само сам да видим. 619 00:27:23,880 --> 00:27:26,551 620 00:27:26,551 --> 00:27:28,800 наравно, може ливестреам и даље види шта радим. 621 00:27:28,800 --> 00:27:29,360 У реду. 622 00:27:29,360 --> 00:27:31,850 >> Дакле, овде је само Гмаил са Рачун Јохн Харвард екипе. 623 00:27:31,850 --> 00:27:34,000 Дакле, ако желим да пошаљете текстуална порука са Алексом, 624 00:27:34,000 --> 00:27:35,530 И наравно да напишете поруку. 625 00:27:35,530 --> 00:27:38,410 И испоставило се, и ја сам тестирали са Алексом пре овде, 626 00:27:38,410 --> 00:27:42,260 тако да можете додати одређени домен име на телефонске бројеве људи, 627 00:27:42,260 --> 00:27:45,850 јер постоји у свету ствари зове СМС на емаил гатеваи. 628 00:27:45,850 --> 00:27:50,000 Што је фенси начин да се каже све од нас који имају мобилне телефоне који 629 00:27:50,000 --> 00:27:53,200 имају бројеве телефона, наравно, вероватно је за ваш превозник, 630 00:27:53,200 --> 00:27:56,840 одређени суфикс као на Втект.цом за Веризон текстуалне поруке 631 00:27:56,840 --> 00:28:00,320 дот цом, које можете додати на листу сопствени број телефона лично, а затим 632 00:28:00,320 --> 00:28:03,540 ти или пријатеља, или ваши родитељи могу Текст који сте у тој адреси. 633 00:28:03,540 --> 00:28:07,380 >> И Веризон има сервер, е-маил Сервер, који по добијању ову поруку, 634 00:28:07,380 --> 00:28:11,180 гледа на нумеричке део и затим користи без обзира посебну магију индустрија 635 00:28:11,180 --> 00:28:14,540 они морају да заправо послати преко таласима то иоур одређену ћелију 636 00:28:14,540 --> 00:28:15,040 тел. 637 00:28:15,040 --> 00:28:18,030 Ово је лепо јер ја не знам знам како послати текстуалну поруку 638 00:28:18,030 --> 00:28:20,460 или да ипак пишу код за мој мобилни телефон, 639 00:28:20,460 --> 00:28:23,580 и можда учинити управо то за коначни пројекат, али за сада све 640 00:28:23,580 --> 00:28:24,770 Имам је мој лаптоп овде. 641 00:28:24,770 --> 00:28:29,830 Дакле, желим да поновити преко тог ЦСВ Филе, линија, линије, линије, линије, 642 00:28:29,830 --> 00:28:35,160 зграбите сваки од бројева телефона Штаба је, и њихов носилац и програматицалли, 643 00:28:35,160 --> 00:28:39,770 спојите, то јест, повежите телефон број са одговарајућим именом домена 644 00:28:39,770 --> 00:28:40,820 а затим пошаљите мејл. 645 00:28:40,820 --> 00:28:41,940 >> Дакле, то је много корака. 646 00:28:41,940 --> 00:28:45,530 И срећно то ради у Ц. То је ноћна мора ситуације 647 00:28:45,530 --> 00:28:48,350 да бисте отворили датотеку, да га прочитам линија, линије, линије, вама као 648 00:28:48,350 --> 00:28:51,100 виде, или може ускоро видети са проблемом сет пет, ако није 649 00:28:51,100 --> 00:28:53,560 Проблем сет четири, а затим динамички спојите 650 00:28:53,560 --> 00:28:57,020 два жице заједно, јер у Ц, да се две жице и комбиновати их, 651 00:28:57,020 --> 00:29:00,900 Шта радиш минимално треба да урадите највероватније? 652 00:29:00,900 --> 00:29:03,020 Морате да прогласи више меморије, зар не? 653 00:29:03,020 --> 00:29:04,710 И питам, маллоц, могу ли добити више меморије? 654 00:29:04,710 --> 00:29:07,060 Тако да могу ставити пола од овога овде, пола од овога овде. 655 00:29:07,060 --> 00:29:08,150 То је само толико корака. 656 00:29:08,150 --> 00:29:10,310 А до тада сте изгубили Интересовање за глупом малом демо 657 00:29:10,310 --> 00:29:11,851 где се свачији телефона бип. 658 00:29:11,851 --> 00:29:14,590 Хајде да урадимо ову врсту ПХП стил, чиме смо 659 00:29:14,590 --> 00:29:16,210 почнете да користите више тог судопери. 660 00:29:16,210 --> 00:29:18,050 >> А идеје су основи исти, 661 00:29:18,050 --> 00:29:20,710 али ми не морамо да превише бринути толико о том нижем нивоу. 662 00:29:20,710 --> 00:29:22,950 Дакле, хајде да видимо како бих могао ићи око радиш ово. 663 00:29:22,950 --> 00:29:26,664 И само тако да ја не понављања грешака из прошлости, 664 00:29:26,664 --> 00:29:28,330 Написао сам неке белешке за себе овде. 665 00:29:28,330 --> 00:29:31,070 Да видимо да ли могу да ходам нас кроз неке од основних корака, 666 00:29:31,070 --> 00:29:33,861 и онда зарад добра времена ћемо можда смањити неке углове на крају. 667 00:29:33,861 --> 00:29:38,007 Ја ћу да наставим и да отворено носач ПХП-да бисте започели ову слику. 668 00:29:38,007 --> 00:29:39,590 И ја ћу ићи напред и учинити. 669 00:29:39,590 --> 00:29:41,490 Филе дршку, као што ћете ускоро видети, уствари 670 00:29:41,490 --> 00:29:44,790 позива функцију која се зове Ф отворена. 671 00:29:44,790 --> 00:29:46,280 И запамти ово отвара фајл. 672 00:29:46,280 --> 00:29:48,800 А цитат, под знацима навода, Р значи шта, опет? 673 00:29:48,800 --> 00:29:49,800 Само га отвори за читање. 674 00:29:49,800 --> 00:29:51,210 Сада у п сету за, ти си урадио ово. 675 00:29:51,210 --> 00:29:54,500 И хандле може бити било шта, Фу, Бар, Бас, свака променљива име. 676 00:29:54,500 --> 00:29:57,470 Али генерално рачунар научник би позвати отворену датотеку, 677 00:29:57,470 --> 00:30:00,962 дајући вам ручице датотеке, нешто да задрзи да се тако изразим. 678 00:30:00,962 --> 00:30:02,670 Ја ћу да радим нека провера грешака. 679 00:30:02,670 --> 00:30:07,260 Дакле, ако ручка лажна, баш као ин Ц, ја ћу да урадим нешто слично, 680 00:30:07,260 --> 00:30:09,545 нисам могла да отворим датотеку, инверзна коса црта н. 681 00:30:09,545 --> 00:30:11,420 И онда ја ћу да иде напред и излаз. 682 00:30:11,420 --> 00:30:14,340 И испоставило се, у ПХП-у, Нисам у функцији. 683 00:30:14,340 --> 00:30:16,160 Нема основна функција овде. 684 00:30:16,160 --> 00:30:17,450 Тако да ја не вратим, само по себи. 685 00:30:17,450 --> 00:30:18,120 Ја излаз. 686 00:30:18,120 --> 00:30:19,619 Који је у суштини иста ствар. 687 00:30:19,619 --> 00:30:22,510 И ја изласка са једним и вероватно. 688 00:30:22,510 --> 00:30:24,220 Један само значи грешку неке врсте. 689 00:30:24,220 --> 00:30:25,580 То је не-нула, тако да је грешка. 690 00:30:25,580 --> 00:30:30,220 >> У реду, тако да ако сам овде доле у свом програму сам отворио фајл. 691 00:30:30,220 --> 00:30:34,250 Ја идем напред и прогласи низ се зове адресе, 692 00:30:34,250 --> 00:30:38,610 а Ц ја би морао знати величина низа унапред, зар не? 693 00:30:38,610 --> 00:30:41,910 Или би требало да се изјасне ово је показивач, а затим користите маллоц. 694 00:30:41,910 --> 00:30:44,720 И онда сваки пут кад прочитам преко другог реда у датотеци, 695 00:30:44,720 --> 00:30:46,620 Ја ћу морати да маллоц више меморије, маллоц више меморије. 696 00:30:46,620 --> 00:30:47,703 То је бол у врату. 697 00:30:47,703 --> 00:30:50,950 И на срећу, ПХП и Руби, и Питхон, и ЈаваСцрипт, они 698 00:30:50,950 --> 00:30:53,880 ће расти своје низова за вас аутоматски. 699 00:30:53,880 --> 00:30:54,830 Нема више маллоц. 700 00:30:54,830 --> 00:30:56,227 Нема више управљање меморијом. 701 00:30:56,227 --> 00:30:57,560 Рачунар се брине о томе. 702 00:30:57,560 --> 00:31:00,330 Али цена коју плаћате. 703 00:31:00,330 --> 00:31:01,350 Мало је спорији. 704 00:31:01,350 --> 00:31:03,190 А за програм као што је овај нећемо приметити. 705 00:31:03,190 --> 00:31:04,720 Ми ћемо послати 100 текстуалних порука. 706 00:31:04,720 --> 00:31:06,136 На пример, неће осјетити. 707 00:31:06,136 --> 00:31:08,430 То је заиста само почиње да битно свој језик избора 708 00:31:08,430 --> 00:31:11,490 када ваши подаци или ваши програми да стварно, стварно знатни, 709 00:31:11,490 --> 00:31:14,120 као што ће бити случај утолико са нашом веб басед ствари. 710 00:31:14,120 --> 00:31:15,450 >> Али за сада идемо полако напредују. 711 00:31:15,450 --> 00:31:20,120 Иако се испоставило да има Функција у Ц зове м се ЦСВ. 712 00:31:20,120 --> 00:31:24,570 Фајл добити ЦСВ, да траје филе ручицу као свој аргумент, 713 00:31:24,570 --> 00:31:28,810 и онда наставља, ред, од ред, по ред, да се чита у ред. 714 00:31:28,810 --> 00:31:30,964 Тако да само чита линију текста из списа. 715 00:31:30,964 --> 00:31:34,130 Али оно што је лепо о овој функцији, не само ми дај линију текста. 716 00:31:34,130 --> 00:31:37,320 Изгледа за оне зарезима, и парсира линију. 717 00:31:37,320 --> 00:31:41,740 И то парсе линију значи да поделимо то на одређеним вредностима у овом контексту. 718 00:31:41,740 --> 00:31:45,510 >> Другим речима, знак долара ред је променљива која је 719 00:31:45,510 --> 00:31:47,010 ће ми дати гомилу индекса. 720 00:31:47,010 --> 00:31:49,635 Ово ће бити прва колона у мом ЦСВ. 721 00:31:49,635 --> 00:31:52,510 Ово ће бити други колона, ово ће бити трећи, 722 00:31:52,510 --> 00:31:53,968 а ово ће бити четврти. 723 00:31:53,968 --> 00:31:57,440 Јер, подсјетимо, и Екцел Тхе нот сарађује последњи пут смо то урадили, 724 00:31:57,440 --> 00:32:03,350 али ако преузети особље дот ЦСВ. 725 00:32:03,350 --> 00:32:04,940 Упс, не преименовати. 726 00:32:04,940 --> 00:32:09,120 Ако преузмете особља дот ЦСВ, и покушајте отварања, 727 00:32:09,120 --> 00:32:12,510 Већ сам регистеред-- Ох није упдате Екцел од прошлог пута. 728 00:32:12,510 --> 00:32:15,880 Видећете да у особља дот ЦСВ Имам четири колоне. 729 00:32:15,880 --> 00:32:18,720 Дакле, када сам прочитао у први ред за Абби овде, 730 00:32:18,720 --> 00:32:23,582 долар знак ред 0 је Абби, долар знак ред је један Лионс 731 00:32:23,582 --> 00:32:27,740 долар знак ред два је њен број, а затим носилац њеног телефона. 732 00:32:27,740 --> 00:32:28,410 >> Дакле, то је све. 733 00:32:28,410 --> 00:32:30,740 И то је лепо, јер ја немају сада да схватим 734 00:32:30,740 --> 00:32:32,800 где свих тих навода заиста јесу. 735 00:32:32,800 --> 00:32:35,300 Зато ћу ићи напред и ово, с обзиром да дефиниција, 736 00:32:35,300 --> 00:32:38,960 Ја ћу да кажем да је њено име у реду брацкет нула, као што је обећао. 737 00:32:38,960 --> 00:32:41,150 И ја ћу да граб-- и Заправо, знаш шта? 738 00:32:41,150 --> 00:32:42,780 Нећу да бринете о њено име, у овом случају. 739 00:32:42,780 --> 00:32:43,988 Ја ћу држати једноставније. 740 00:32:43,988 --> 00:32:48,610 Ја ћу да радим њен број је у реду брацкет два, мислим. 741 00:32:48,610 --> 00:32:50,510 И њен носилац је где? 742 00:32:50,510 --> 00:32:53,405 Ред три, један изнад. 743 00:32:53,405 --> 00:32:54,280 Дакле, ништа ново тамо. 744 00:32:54,280 --> 00:32:56,770 То је само нула индексирање у матрици. 745 00:32:56,770 --> 00:32:58,760 >> И сад, ја ћу да урадите следеће. 746 00:32:58,760 --> 00:33:03,930 Ако превозник једнак једнака АТ & т-- Ја ћу имати лооп-- 747 00:33:03,930 --> 00:33:06,790 Желим да се створи емаил Адреса то изгледа овако. 748 00:33:06,790 --> 00:33:12,320 То ће бити 617-555-1212 у, шта је то, тект.АТТ.нет, 749 00:33:12,320 --> 00:33:13,490 је оно што желим да урадим. 750 00:33:13,490 --> 00:33:15,260 Па како то да урадим ово? 751 00:33:15,260 --> 00:33:16,730 Ја ћу да урадите следеће. 752 00:33:16,730 --> 00:33:22,460 Њена адреса ће бити њен број, а сада, пусти ме само напред и урадите то. 753 00:33:22,460 --> 00:33:23,760 Ово је неки фанки синтаксе. 754 00:33:23,760 --> 00:33:27,250 Могао бих да ова одсто трик, али ја могу само ово. 755 00:33:27,250 --> 00:33:29,900 >> Дакле, ово је ПХП ствар, али хајде да размотримо шта радим. 756 00:33:29,900 --> 00:33:31,630 Долари знак адресу на лева, само променљива. 757 00:33:31,630 --> 00:33:32,300 Дај ми променљиву. 758 00:33:32,300 --> 00:33:33,390 Ја не морам да одредите тип. 759 00:33:33,390 --> 00:33:34,570 ПХП ће схватити. 760 00:33:34,570 --> 00:33:36,580 На десној страни, шта је тип података 761 00:33:36,580 --> 00:33:38,399 те целе ствари на десној страни? 762 00:33:38,399 --> 00:33:40,190 Изгледа као стринг, јер је дупла 763 00:33:40,190 --> 00:33:42,280 наводи на далеко лево и десно далеко. 764 00:33:42,280 --> 00:33:44,210 Сада постоји неки фанки нови синтакса овде. 765 00:33:44,210 --> 00:33:47,550 Има великих заграда, а долар знак број. 766 00:33:47,550 --> 00:33:52,860 Али да претпоставите шта је то синтакса Вероватно говори ПХП да уради за мене? 767 00:33:52,860 --> 00:33:53,360 Да. 768 00:33:53,360 --> 00:33:54,630 Само убаците вредност тамо. 769 00:33:54,630 --> 00:33:55,530 Дакле, нема одсто а. 770 00:33:55,530 --> 00:33:58,160 Могли би да искористимо за штампање Ф или с штампа ф или нешто слично томе, 771 00:33:58,160 --> 00:34:00,070 али ПХП и много језици вишем нивоу, 772 00:34:00,070 --> 00:34:03,070 ви ћете видети да сте могли раде исту ствар функционално, можда 773 00:34:03,070 --> 00:34:04,019 шест различитих начина. 774 00:34:04,019 --> 00:34:06,310 И тако почиње да постане питање дизајна и стила. 775 00:34:06,310 --> 00:34:09,902 Дакле, ово је само загонетан начин гледа да се каже, дај ми адресу е-поште, 776 00:34:09,902 --> 00:34:12,110 али плуг-ин броја у између ових заграда. 777 00:34:12,110 --> 00:34:15,440 И великих заграда неће завршити у завршној речи. 778 00:34:15,440 --> 00:34:18,010 >> Сада можемо да прескочимо неке од ове линије за име времена. 779 00:34:18,010 --> 00:34:21,210 Дакле, ако носилац једнака једнако верХоризон-- Упс, 780 00:34:21,210 --> 00:34:24,989 Веризон-- желим да радим нешто веома сличан, где је адреса добија, 781 00:34:24,989 --> 00:34:27,569 цитат, под знацима навода, број на тект.АТТ.нет. 782 00:34:27,569 --> 00:34:30,380 783 00:34:30,380 --> 00:34:35,050 И онда могу да урадим исту врсту ствар за остатак превозника. 784 00:34:35,050 --> 00:34:37,090 Али ја ћу учинити тачка, тачка, тачка за сада. 785 00:34:37,090 --> 00:34:43,050 А сада претпоставимо да Желим да додам низ, гурај. 786 00:34:43,050 --> 00:34:45,969 Желим да додам до Арраи, под називом адресе. 787 00:34:45,969 --> 00:34:50,409 >> Ова адреса, ово је како си додати нешто низа у ПХП. 788 00:34:50,409 --> 00:34:51,610 Не треба да урадите маллоц. 789 00:34:51,610 --> 00:34:53,068 Не морате да промените величину низа. 790 00:34:53,068 --> 00:34:54,259 Само реци Арраи, гурај. 791 00:34:54,259 --> 00:34:57,300 Шта желите да пусх-- шта арраи желиш да гура нешто на? 792 00:34:57,300 --> 00:34:58,000 Адресе. 793 00:34:58,000 --> 00:34:59,550 Шта желите да гурне на адресе? 794 00:34:59,550 --> 00:35:00,350 Адреса. 795 00:35:00,350 --> 00:35:02,430 А у ствари, ти ако стварно желиш да будеш паметан, 796 00:35:02,430 --> 00:35:05,610 неки синтактичка шећера за то, да тако кажем, 797 00:35:05,610 --> 00:35:10,230 што само значи како можете да урадите ово лепше начин би био да се уради. 798 00:35:10,230 --> 00:35:14,060 И то има ефекат раста Адресе низ по величини једне, 799 00:35:14,060 --> 00:35:17,130 и онда бућ да додатно е-маил адреса у њега. 800 00:35:17,130 --> 00:35:17,630 Да. 801 00:35:17,630 --> 00:35:19,730 >> ПУБЛИКА: [неразумљиво] 802 00:35:19,730 --> 00:35:22,520 >> СПЕАКЕР 1: грешка у куцању на друго ако-- Ох, носач. 803 00:35:22,520 --> 00:35:23,070 То је ок. 804 00:35:23,070 --> 00:35:26,971 Такође се неће допасти мој неуспех спроведе део овог програма 805 00:35:26,971 --> 00:35:27,470 после. 806 00:35:27,470 --> 00:35:28,810 Али хвала ти за хватање. 807 00:35:28,810 --> 00:35:30,671 Још једна буба. 808 00:35:30,671 --> 00:35:31,170 Хвала вам. 809 00:35:31,170 --> 00:35:33,746 Желимо да ово буде Втект.цом. 810 00:35:33,746 --> 00:35:34,340 Да. 811 00:35:34,340 --> 00:35:34,839 У реду. 812 00:35:34,839 --> 00:35:36,330 Па где нам ово оставити? 813 00:35:36,330 --> 00:35:38,224 Ми смо написали код да бисте отворили датотеку. 814 00:35:38,224 --> 00:35:40,390 Имамо петљу да поновити преко редова у датотеци. 815 00:35:40,390 --> 00:35:43,650 Имамо код који додаје да мој низ, један по један време, правилно 816 00:35:43,650 --> 00:35:44,790 форматиран е-маил адреса. 817 00:35:44,790 --> 00:35:48,480 Дакле, све то заиста остаје за слање е-маил да сваки од ових људи. 818 00:35:48,480 --> 00:35:52,830 >> Тако да сам отишао напред и реадиед се на следећи начин. 819 00:35:52,830 --> 00:35:59,580 Шта ћу да радим овде је-- и хајдемо само напред и пређите на неком стварном код, 820 00:35:59,580 --> 00:36:00,620 која изгледа овако. 821 00:36:00,620 --> 00:36:02,950 Дакле, овде је пре печена Верзија сам написао раније. 822 00:36:02,950 --> 00:36:04,700 И приметио сам завршио спровођење Спринт. 823 00:36:04,700 --> 00:36:06,130 Завршио сам имплементацији Т-Мобиле. 824 00:36:06,130 --> 00:36:08,020 Завршио сам спровођењу Виргин Мобиле. 825 00:36:08,020 --> 00:36:09,622 И ја ћу се извињавам унапред. 826 00:36:09,622 --> 00:36:12,080 Постоји неколико носача који неки ученици у разреду имају 827 00:36:12,080 --> 00:36:14,640 да нисам сметало набрајам у стању ако овде. 828 00:36:14,640 --> 00:36:16,015 Дакле, нису сви текстови ће се угасити. 829 00:36:16,015 --> 00:36:17,556 Али, хајде да видимо шта још треба да урадим. 830 00:36:17,556 --> 00:36:19,660 Затворим фајл, само као у стр сет четири. 831 00:36:19,660 --> 00:36:20,835 >> А ово је нова синтакса. 832 00:36:20,835 --> 00:36:22,710 А видећемо мало Мало тога током времена, 833 00:36:22,710 --> 00:36:24,450 посебно са п сет седам и осам. 834 00:36:24,450 --> 00:36:28,140 Али ово је синтакса за креирање посебна врста структуре. 835 00:36:28,140 --> 00:36:31,490 Испоставило се да постоји библиотека која долази са ПХП, зове ПХП маилер. 836 00:36:31,490 --> 00:36:33,840 Његова сврха у животу је да програмски шаљу мејлове. 837 00:36:33,840 --> 00:36:36,840 То је код неког другог то написао олакшава нам послати е-маилове, 838 00:36:36,840 --> 00:36:39,131 тако да не морате да задржите иде напред и назад на Гмаил, 839 00:36:39,131 --> 00:36:41,151 и налепите у е-маил адресе људи. 840 00:36:41,151 --> 00:36:44,150 Постоји гомила линија овде да искрено, само сам копирао 841 00:36:44,150 --> 00:36:45,660 и лепили из документације. 842 00:36:45,660 --> 00:36:47,409 У ствари, ако сте радознао, све оставио сам 843 00:36:47,409 --> 00:36:50,550 УРЛ адресе документације у коду да ћемо писати касније. 844 00:36:50,550 --> 00:36:52,360 И приметио да је међу ствари које сам радим 845 00:36:52,360 --> 00:36:55,710 је, ја говорим ову библиотеку, користите Гмаил серверу, зар не? 846 00:36:55,710 --> 00:36:59,360 СМТП смо кратко разговарали када смо били на Јејлу о томе Симпле Маил 847 00:36:59,360 --> 00:37:00,110 Трансфер Протоцол. 848 00:37:00,110 --> 00:37:02,920 То је протокол који сервери користе за слање е-маил, 849 00:37:02,920 --> 00:37:05,150 и то је-- Гмаил има једну од тих. 850 00:37:05,150 --> 00:37:07,290 Порт, ово је ТЦП број порта. 851 00:37:07,290 --> 00:37:09,630 У реду је ако вас нису видели 587 раније. 852 00:37:09,630 --> 00:37:11,420 Само знам да из документације. 853 00:37:11,420 --> 00:37:12,250 Ево моје корисничко име. 854 00:37:12,250 --> 00:37:13,670 Ја ћу користити ЦФ50 бот. 855 00:37:13,670 --> 00:37:16,690 И у једном тренутку, ја ћу да укуцајте бот стварним лозинком. 856 00:37:16,690 --> 00:37:18,690 А онда овде доле, приметио оно што остаје. 857 00:37:18,690 --> 00:37:22,840 >> Кренуо сам из ми адресу да се бот на ЦС50.нет. 858 00:37:22,840 --> 00:37:26,240 Мислим да нећете зажалити слањем Текст поруке до 800 људи који 859 00:37:26,240 --> 00:37:30,590 каже, недостајеш ми, љубави ЦС50 Бот, можда за оне који не могу успети данас. 860 00:37:30,590 --> 00:37:33,160 А онда у реду 76, шта да радим? 861 00:37:33,160 --> 00:37:39,010 Ова врста изгледа као Ц. Дакле, за и једнако 0, н екуалс-- сада броји је нова. 862 00:37:39,010 --> 00:37:42,077 Испоставило се да, ако желите да добијете број ствари у низу, 863 00:37:42,077 --> 00:37:43,660 не морате да се више сјетити. 864 00:37:43,660 --> 00:37:45,370 Можете само да поставим функција названа датотека, 865 00:37:45,370 --> 00:37:48,320 и она ће вам рећи колико адресе су у том низу. 866 00:37:48,320 --> 00:37:53,210 >> А онда ћу да додам адреса на е-маил. 867 00:37:53,210 --> 00:37:55,090 И знам то из користећи документацију. 868 00:37:55,090 --> 00:37:56,900 Постоји додатак адреса функција. 869 00:37:56,900 --> 00:37:58,980 А сада приметити ту је један део синтаксе. 870 00:37:58,980 --> 00:38:01,470 Видели смо то раније у Ц. Слично у духу. 871 00:38:01,470 --> 00:38:04,100 Можете мислити на долар знак маил као променљива, што је она. 872 00:38:04,100 --> 00:38:08,100 Али то је струцт унутар које нису само својства, 873 00:38:08,100 --> 00:38:09,400 варијабле ако хоћеш. 874 00:38:09,400 --> 00:38:13,480 Али испоставило се да у ПХП-у, који је програмирање објецт ориентед 875 00:38:13,480 --> 00:38:16,520 језика, као и Јава ако је оклопним транспортерима. 876 00:38:16,520 --> 00:38:21,420 >> Знак за долар пошта, ако желите да-- такође има функције унутар ње, 877 00:38:21,420 --> 00:38:22,380 или методе. 878 00:38:22,380 --> 00:38:24,720 Дакле, ово је рећи да Посебан ПХП-Маилер 879 00:38:24,720 --> 00:38:29,280 библиотека, ако имам његов променљиву, ако желим да позовем функцију која 880 00:38:29,280 --> 00:38:31,559 долази са те библиотеке, за данашње потребе, 881 00:38:31,559 --> 00:38:33,100 Само знам да користите стрелице запис. 882 00:38:33,100 --> 00:38:34,150 Нема тачка нотација. 883 00:38:34,150 --> 00:38:35,220 То је само стрелица. 884 00:38:35,220 --> 00:38:36,380 Али то није показивач. 885 00:38:36,380 --> 00:38:38,680 То је само позајмио од синтакси Ц екипе. 886 00:38:38,680 --> 00:38:43,620 Па зови додати адресу унутар Објекат Ова библиотека или променљива. 887 00:38:43,620 --> 00:38:44,440 >> У реду. 888 00:38:44,440 --> 00:38:45,570 Ово је магични линија. 889 00:38:45,570 --> 00:38:46,740 Тако сам послати е-маил. 890 00:38:46,740 --> 00:38:50,040 То је еквивалент отварању Гмаил је куцањем, и ударају послати. 891 00:38:50,040 --> 00:38:54,870 Али то ће уместо испрати е емаил на ову адресу, са овим телом, 892 00:38:54,870 --> 00:38:57,120 од ЦС50 бот. 893 00:38:57,120 --> 00:38:58,710 И сада кључ линија. 894 00:38:58,710 --> 00:39:03,130 Ова линија је одсутна у 2011 као кад помислим сам последњи пут покушао ово. 895 00:39:03,130 --> 00:39:05,640 Та линија која је, наравно, брише адресе. 896 00:39:05,640 --> 00:39:07,920 Дакле, логично, ако И не обришете адресу 897 00:39:07,920 --> 00:39:11,740 после сваког итерацији, прва е-маил или текстуалну поруку одлази у Алице, 898 00:39:11,740 --> 00:39:14,320 друга иде Алиса и Боб, трећи 899 00:39:14,320 --> 00:39:17,870 иде на Алиса и Боб и Цхарлие, стога веома скупо грешка 900 00:39:17,870 --> 00:39:18,760 Направио сам те године. 901 00:39:18,760 --> 00:39:21,080 >> Па да видимо. 902 00:39:21,080 --> 00:39:24,200 Има ли питања пре него што вам послати све текст 903 00:39:24,200 --> 00:39:28,210 порука са 10 одсто вероватноће? 904 00:39:28,210 --> 00:39:28,940 Неко питање? 905 00:39:28,940 --> 00:39:30,330 У реду. 906 00:39:30,330 --> 00:39:36,100 Идемо ме овде и промене лозинка за шта треба да ради, 907 00:39:36,100 --> 00:39:37,780 ће вероватно добити црну листу Гмаил. 908 00:39:37,780 --> 00:39:39,821 Дакле, они можда неће сви ићи напоље, јер они вероватно 909 00:39:39,821 --> 00:39:42,960 нас не воле слање е-маилова 800 у фор петљи одједном. 910 00:39:42,960 --> 00:39:45,140 Пошто то није посебно људско понашање. 911 00:39:45,140 --> 00:39:47,460 >> О, ја ћу променити једну ствар. 912 00:39:47,460 --> 00:39:50,850 Горе на врху, ја ћу сент-- промените слику да студенти дот ЦСВ. 913 00:39:50,850 --> 00:39:55,420 И неће отворити, али ово је идентичан ЦСВ датотеку са не 100 запослених, 914 00:39:55,420 --> 00:39:58,970 али 800 студената, само на Харварду, јер Јејл 915 00:39:58,970 --> 00:40:00,207 има удубљење октобра ове недеље. 916 00:40:00,207 --> 00:40:03,290 И чини се као врста кретен ствари да уради да би текст све њих зашто 917 00:40:03,290 --> 00:40:04,750 нису у класи на одмору. 918 00:40:04,750 --> 00:40:05,250 То је ок. 919 00:40:05,250 --> 00:40:08,310 Само Харвард студенти Данас унутар тог фајла. 920 00:40:08,310 --> 00:40:12,320 А сада да се вратимо мом прозору терминала. 921 00:40:12,320 --> 00:40:13,710 Ја сам мало нервозан. 922 00:40:13,710 --> 00:40:22,000 >> ОК, сада ћу да одем у директоријум, и ПХП текста тачка ПХП. 923 00:40:22,000 --> 00:40:24,950 Како о једном храбром волонтер? 924 00:40:24,950 --> 00:40:26,690 Дакле, ја не желим да ово на мене. 925 00:40:26,690 --> 00:40:28,410 ОК, хајде горе. 926 00:40:28,410 --> 00:40:29,162 Како се зовеш? 927 00:40:29,162 --> 00:40:29,662 Маиа Маиа. 928 00:40:29,662 --> 00:40:30,328 СПЕАКЕР 1: Маја. 929 00:40:30,328 --> 00:40:31,610 Хајде, Маиа. 930 00:40:31,610 --> 00:40:34,120 У реду. 931 00:40:34,120 --> 00:40:35,389 Да видимо да ли ово ради. 932 00:40:35,389 --> 00:40:38,430 Ставио сам своју емаил адресу у филе-- свој број телефона у датотеци, 933 00:40:38,430 --> 00:40:40,110 тако да надам се да ћу добити један. 934 00:40:40,110 --> 00:40:40,819 Драго ми је да смо се упознали. 935 00:40:40,819 --> 00:40:41,443 МАЈА: Исто тако. 936 00:40:41,443 --> 00:40:44,510 СПЕАКЕР 1: Дакле, све што треба да урадите је хит Ентер да бисте послали 800 текстуалне поруке, 937 00:40:44,510 --> 00:40:45,466 ако не забрљам. 938 00:40:45,466 --> 00:40:51,106 939 00:40:51,106 --> 00:40:51,606 Lep. 940 00:40:51,606 --> 00:40:55,556 941 00:40:55,556 --> 00:40:58,430 Да ли потрајати, статистички, док не дођемо до емаил аддресс-- 942 00:40:58,430 --> 00:41:00,573 текстуална порука да је у собу одмах. 943 00:41:00,573 --> 00:41:03,880 944 00:41:03,880 --> 00:41:05,390 Да задржавају и видимо. 945 00:41:05,390 --> 00:41:06,940 >> ПУБЛИКА: [Вхистлинг] 946 00:41:06,940 --> 00:41:08,270 >> СПЕАКЕР 1: О, да. 947 00:41:08,270 --> 00:41:09,230 >> ПУБЛИКА: О, те. 948 00:41:09,230 --> 00:41:16,720 949 00:41:16,720 --> 00:41:19,180 >> СПЕАКЕР 1: За петље су-- ово није спор због ПХП. 950 00:41:19,180 --> 00:41:21,810 Ово је спор, јер Гмаил нас гушење и не 951 00:41:21,810 --> 00:41:25,170 допуштајући нам послати више од као један емаил по секунди. 952 00:41:25,170 --> 00:41:26,300 Било шта? 953 00:41:26,300 --> 00:41:29,990 Ово је био тежак ствар за мене да тестира на кући са само мене и моје једном телефону, тако. 954 00:41:29,990 --> 00:41:37,630 955 00:41:37,630 --> 00:41:41,111 Да ли је то надам се из бот? 956 00:41:41,111 --> 00:41:41,610 Да? 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 Kazi da. 960 00:41:46,620 --> 00:41:47,479 Ne? 961 00:41:47,479 --> 00:41:49,374 То је од пријатеља? 962 00:41:49,374 --> 00:41:49,874 Авквард. 963 00:41:49,874 --> 00:41:50,374 ОК. 964 00:41:50,374 --> 00:41:56,580 965 00:41:56,580 --> 00:42:00,090 Прилично сам сигуран да је ипак ради. 966 00:42:00,090 --> 00:42:00,910 Uh Oh. 967 00:42:00,910 --> 00:42:03,190 Они блацк-- ох, цекај мало. 968 00:42:03,190 --> 00:42:04,280 Ох, знаш шта? 969 00:42:04,280 --> 00:42:06,100 Само мало. 970 00:42:06,100 --> 00:42:07,802 Само Маиа и Ја Миа је то било? 971 00:42:07,802 --> 00:42:08,301 Маиа Маиа. 972 00:42:08,301 --> 00:42:12,110 СПЕАКЕР 1: Маја, ће знам шта сам урадио погрешно овде. 973 00:42:12,110 --> 00:42:14,890 Ох, чекај мало. 974 00:42:14,890 --> 00:42:23,320 Мислим да сам управо послао 100 текстуалне поруке на 555-1212. 975 00:42:23,320 --> 00:42:24,346 Причекати. 976 00:42:24,346 --> 00:42:28,080 977 00:42:28,080 --> 00:42:29,270 Ја не могу да победим било која година. 978 00:42:29,270 --> 00:42:30,180 ОК. 979 00:42:30,180 --> 00:42:30,680 Маја? 980 00:42:30,680 --> 00:42:33,530 981 00:42:33,530 --> 00:42:36,219 Фик то у пост-продукцију. 982 00:42:36,219 --> 00:42:36,718 Проклетство! 983 00:42:36,718 --> 00:42:39,430 984 00:42:39,430 --> 00:42:40,390 Након из адресу. 985 00:42:40,390 --> 00:42:41,301 У реду, станд би. 986 00:42:41,301 --> 00:42:41,800 Извините. 987 00:42:41,800 --> 00:42:44,550 988 00:42:44,550 --> 00:42:47,080 То је болно сваке године. 989 00:42:47,080 --> 00:42:48,640 У реду, само тренутак. 990 00:42:48,640 --> 00:42:50,530 Ово је добро. 991 00:42:50,530 --> 00:42:54,010 Ја уместо да радим ово. 992 00:42:54,010 --> 00:42:55,470 Штампа адреса. 993 00:42:55,470 --> 00:42:56,030 У реду, станд би. 994 00:42:56,030 --> 00:43:01,340 Принт адресе, конзола и. 995 00:43:01,340 --> 00:43:02,710 Да, то ми се свиђа. 996 00:43:02,710 --> 00:43:10,220 Доллар сигн-- реду ја ћу објаснити шта сам ради у једном тренутку, након што сам покренути ово. 997 00:43:10,220 --> 00:43:11,670 Сваке године. 998 00:43:11,670 --> 00:43:13,125 У реду, идемо. 999 00:43:13,125 --> 00:43:15,750 Имам само-- и не желим показати свачију број телефона, 1000 00:43:15,750 --> 00:43:17,740 али могу да потврдим Маја са климањем главе, 1001 00:43:17,740 --> 00:43:20,800 да она види сви број телефона у класи 1002 00:43:20,800 --> 00:43:26,750 да ћу копирати у програм који се зове Гмаил-а. 1003 00:43:26,750 --> 00:43:30,860 И ако у Гмаил-у, шта желимо да кажемо? 1004 00:43:30,860 --> 00:43:32,137 Недостајеш ми. 1005 00:43:32,137 --> 00:43:33,220 Лове-- то није од мене. 1006 00:43:33,220 --> 00:43:35,230 Нисам ни ударио послати још. 1007 00:43:35,230 --> 00:43:39,450 Дакле, идемо напред и урадите ово, ако могу зумирати у. 1008 00:43:39,450 --> 00:43:40,300 ОК. 1009 00:43:40,300 --> 00:43:42,480 Тако да сам с програма под називом Гмаил сада. 1010 00:43:42,480 --> 00:43:44,490 Ако Маиа, желите да кликните на дугме Пошаљи, 1011 00:43:44,490 --> 00:43:46,970 ми ћемо симулирати шта је Код требао урадити. 1012 00:43:46,970 --> 00:43:54,630 1013 00:43:54,630 --> 00:43:55,254 >> Било шта? 1014 00:43:55,254 --> 00:43:56,062 >> [Бееп] 1015 00:43:56,062 --> 00:43:56,870 >> ПУБЛИКА: Да. 1016 00:43:56,870 --> 00:43:58,030 >> СПЕАКЕР 1: Да? 1017 00:43:58,030 --> 00:43:59,210 Спасење? 1018 00:43:59,210 --> 00:44:00,427 >> ПУБЛИКА: Да. 1019 00:44:00,427 --> 00:44:01,260 СПЕАКЕР 1: Недостајеш ми. 1020 00:44:01,260 --> 00:44:02,718 И ја ћу послати остатак. 1021 00:44:02,718 --> 00:44:06,060 Послао сам пола јер нисам мислим Гмаил би пустио оне проћи. 1022 00:44:06,060 --> 00:44:12,410 Па само се сетите, данас је дан да сте сазнали да могу да користим Гмаил. 1023 00:44:12,410 --> 00:44:14,977 1024 00:44:14,977 --> 00:44:15,810 То је застрашујуће. 1025 00:44:15,810 --> 00:44:17,140 Велики аплауз за Маје. 1026 00:44:17,140 --> 00:44:18,980 Хвала вам. 1027 00:44:18,980 --> 00:44:21,280 У реду, тако. 1028 00:44:21,280 --> 00:44:22,210 Шта 1029 00:44:22,210 --> 00:44:23,140 >> [Бееп] 1030 00:44:23,140 --> 00:44:25,010 1031 00:44:25,010 --> 00:44:26,580 >> Имамо неколико звучних сигнала, зар не? 1032 00:44:26,580 --> 00:44:27,080 У реду. 1033 00:44:27,080 --> 00:44:30,590 Сада ћу добити 700 стварно несрећне емаил назад из школских другова. 1034 00:44:30,590 --> 00:44:32,400 Дакле, барем ћемо видети ако је вредело. 1035 00:44:32,400 --> 00:44:33,300 Дакле, шта је пошло наопако? 1036 00:44:33,300 --> 00:44:35,300 Ја ћу схватити шта се погрешно након чињеница, 1037 00:44:35,300 --> 00:44:38,340 али само погледајте колико је лако било је то да урадим у ПХП-у. 1038 00:44:38,340 --> 00:44:44,598 Дакле, шта можемо сад да стварно имамо овај изражајност ПХП. 1039 00:44:44,598 --> 00:44:45,970 То је било-- то је било грозно. 1040 00:44:45,970 --> 00:44:46,480 У реду. 1041 00:44:46,480 --> 00:44:48,430 Дакле, то је оно што би требало да оде напоље. 1042 00:44:48,430 --> 00:44:52,770 Ово ме је тестирање јутрос на мој телефон, стварна с мог телефона. 1043 00:44:52,770 --> 00:44:56,180 >> Али сада хајде да размотримо зашто ми заправо уводите 1044 00:44:56,180 --> 00:44:57,840 све ове ствари на првом месту. 1045 00:44:57,840 --> 00:45:01,625 Дакле, циљ је да се пишем ове програме који 1046 00:45:01,625 --> 00:45:03,250 се пишу на командној линији, зар не? 1047 00:45:03,250 --> 00:45:05,000 Тако сам написао једноставна здраво програма, написао сам 1048 00:45:05,000 --> 00:45:09,155 мали програм који ради уређаја, и користио читања линију и тако даље. 1049 00:45:09,155 --> 00:45:11,530 И у теорији, Управо сам написао програм који је послао из 1050 00:45:11,530 --> 00:45:14,290 800 текстуалне поруке, узми или остави 800. 1051 00:45:14,290 --> 00:45:16,830 А тај програм је све и даље раде на командној линији. 1052 00:45:16,830 --> 00:45:18,538 И то је наравно Није веб, зар не? 1053 00:45:18,538 --> 00:45:22,160 Циљ је да се сада почнете да користите оно што ја тврдим је лакши за коришћење 1054 00:45:22,160 --> 00:45:24,720 језик, претпостављам Више моћан језик у смислу 1055 00:45:24,720 --> 00:45:27,104 од особина које долазе са њим, да почне 1056 00:45:27,104 --> 00:45:29,850 писања кода да генерише веб странице. 1057 00:45:29,850 --> 00:45:33,248 >> Дакле, последњи пут и прошле недеље, разговарали смо о ХТТП и ХТМЛ. 1058 00:45:33,248 --> 00:45:36,350 А шта је лепо о ХТМЛ- је да је само чист текст. 1059 00:45:36,350 --> 00:45:38,220 А текст је свакако нешто што можете 1060 00:45:38,220 --> 00:45:42,040 принт буквално позива отисак Ф функцију, или функција за штампање. 1061 00:45:42,040 --> 00:45:46,160 И заиста, то је оно што ПХП је Сада ће нам омогућити да радимо. 1062 00:45:46,160 --> 00:45:48,610 Дакле, међу примерима смо има у данашњем изворног кода, 1063 00:45:48,610 --> 00:45:51,610 поред неких кодекса да сам ставио тамо малопре, 1064 00:45:51,610 --> 00:45:55,440 имамо програме као што је овај пример. 1065 00:45:55,440 --> 00:45:58,760 Фросхимс, или Фресхман Интрамурални Спорт, заправо 1066 00:45:58,760 --> 00:46:01,500 један од првих додатних планова Сам се укључио у пре неколико година. 1067 00:46:01,500 --> 00:46:03,750 И мој цимер и ја, са нека друга деца у кампусу, 1068 00:46:03,750 --> 00:46:05,280 се користи за покретање програма фросхимс. 1069 00:46:05,280 --> 00:46:07,420 Узимам своје текстуалне поруке сада. 1070 00:46:07,420 --> 00:46:14,030 >> Сада тако да смо, назад у дан, тако да је ово је 1996 или тако, било је интернет, 1071 00:46:14,030 --> 00:46:17,395 али није није било процесс-- било сајт фросхимс. 1072 00:46:17,395 --> 00:46:20,270 И тако, ако желите да се пријавите за фудбал или одбојку или било шта друго, 1073 00:46:20,270 --> 00:46:22,240 ти би попуните ово зове комад папира, 1074 00:46:22,240 --> 00:46:25,060 и ти би ходати преко Харварду двориште, а ти би га померите 1075 00:46:25,060 --> 00:46:29,230 у маил отвор на Процтор, који је је био у Вигглесвортх, један дом. 1076 00:46:29,230 --> 00:46:31,270 И то сте регистровани. 1077 00:46:31,270 --> 00:46:33,570 И он или она онда би компонује емаил за вас 1078 00:46:33,570 --> 00:46:36,514 ручно, слично као И Управо сам овде са Мајом, 1079 00:46:36,514 --> 00:46:38,930 и онда би потврдили да су били регистровани. 1080 00:46:38,930 --> 00:46:40,840 >> Дакле, ово је као мали виси воће, да се тако изразим. 1081 00:46:40,840 --> 00:46:42,930 Било је то глупо смо користили папир за ово. 1082 00:46:42,930 --> 00:46:45,024 Хтео сам да бисмо могли само да одем на сајту, 1083 00:46:45,024 --> 00:46:47,440 или имају бруцоша ићи на сајт, региструјте за спорт, 1084 00:46:47,440 --> 00:46:50,398 и само аутоматизују доста овога стављајући своје име и е-пошту 1085 00:46:50,398 --> 00:46:51,850 и тако даље у базу података. 1086 00:46:51,850 --> 00:46:56,510 И у ствари, веома прва верзија на сајту, користећи Супер ружну ХТМЛ, 1087 00:46:56,510 --> 00:46:58,195 можда изгледало овако нешто. 1088 00:46:58,195 --> 00:47:01,070 То је заправо била, иронично, више срамотно тражи од овог леђа 1089 00:47:01,070 --> 00:47:01,460 онда. 1090 00:47:01,460 --> 00:47:02,890 Али сам користио програмски језик. 1091 00:47:02,890 --> 00:47:06,060 Не ПХП већ зове Перл што је старији језик, 1092 00:47:06,060 --> 00:47:07,251 али врло слично у духу. 1093 00:47:07,251 --> 00:47:09,000 И ја сам потпуно учио га за себе. 1094 00:47:09,000 --> 00:47:12,208 И то ми је времена да га схватим, тражи пуно питања пријатеља. 1095 00:47:12,208 --> 00:47:14,080 Али идеје тамо били исти. 1096 00:47:14,080 --> 00:47:18,050 Јер оно што је заиста дизајниран ПХП за није командне линије ствари 1097 00:47:18,050 --> 00:47:20,450 смо играли са, али за веб програмирање. 1098 00:47:20,450 --> 00:47:24,960 >> То је заиста везан у свом функције постављена на веб, као што следи. 1099 00:47:24,960 --> 00:47:26,370 Ово је фросхимс. 1100 00:47:26,370 --> 00:47:28,720 И ако сам желео да региструју у овом облику, 1101 00:47:28,720 --> 00:47:30,930 ово је прилично ружна, свакако, али дозволите ми само напред 1102 00:47:30,930 --> 00:47:34,440 и бити мање удобан ученик, и шта год спорт за Маттхевс, 1103 00:47:34,440 --> 00:47:35,630 кликните регистар. 1104 00:47:35,630 --> 00:47:39,780 Оно што желим да будем у стању да уради је доставе информације из форме, 1105 00:47:39,780 --> 00:47:42,400 не Гоогле серверу као ми смо прошли пут, у потпуности 1106 00:47:42,400 --> 00:47:47,100 варање преко њихове бацкенд, ја Желим да спроведе своју бацкенд код. 1107 00:47:47,100 --> 00:47:51,410 Што значи писања ПХП Код који живи на УРЛ 1108 00:47:51,410 --> 00:47:54,180 да подаци форма може се поднети. 1109 00:47:54,180 --> 00:47:57,510 >> А онда ваш код, написан у ПХП на серверу, 1110 00:47:57,510 --> 00:47:59,400 онда могу одговорити на тај улаз корисника. 1111 00:47:59,400 --> 00:48:03,287 Као његово име, или ниво удобности, или спаваоница, а затим урадите нешто са њим. 1112 00:48:03,287 --> 00:48:05,120 У овом случају, само глупо је одштампан 1113 00:48:05,120 --> 00:48:06,750 као текст, који није све тако лепа. 1114 00:48:06,750 --> 00:48:09,590 Али ти сигурно могао замислите, ако знате ХТМЛ, 1115 00:48:09,590 --> 00:48:13,010 и ускоро ћете знати како да створи ХТМЛ-са штампом ф, и принт, 1116 00:48:13,010 --> 00:48:16,500 и сличне функције, сигурно може генеришу лепшу веб страницу на којој пише, 1117 00:48:16,500 --> 00:48:17,929 Хеј Давиде, ви сада регистровано. 1118 00:48:17,929 --> 00:48:20,220 Ти си мање удобна студент из Маттхевс, зар не? 1119 00:48:20,220 --> 00:48:23,880 >> Само можете користити гомилу% сес, или великих заграда и знак долара 1120 00:48:23,880 --> 00:48:27,750 обележавање сам малопре, да генеришу текст који је више усер фриендли 1121 00:48:27,750 --> 00:48:28,567 од овога. 1122 00:48:28,567 --> 00:48:30,150 Дакле, хајде да погледамо овај један фајл. 1123 00:48:30,150 --> 00:48:34,666 Фросхим нула тачка тект изгледа овако. 1124 00:48:34,666 --> 00:48:37,860 1125 00:48:37,860 --> 00:48:43,500 Када сам релоад ЦС50 ИДЕ, фросхим нула изгледа овако. 1126 00:48:43,500 --> 00:48:45,700 Ово је фросхим нула тачка ПХП. 1127 00:48:45,700 --> 00:48:47,730 И шта сте приметили о овом фајлу? 1128 00:48:47,730 --> 00:48:49,506 >> ПУБЛИКА: [неразумљиво] 1129 00:48:49,506 --> 00:48:50,922 СПЕАКЕР 1: Извињавам се, мало гласније? 1130 00:48:50,922 --> 00:48:53,250 ПУБЛИКА: [неразумљиво] Све је у ХТМЛ. 1131 00:48:53,250 --> 00:48:57,130 И, у ствари, то је зато што оно што је занимљиво у вези ПХП 1132 00:48:57,130 --> 00:48:58,880 је да је осмишљен бити, у добру 1133 00:48:58,880 --> 00:49:02,110 или још горе, помешана са ХТМЛ код. 1134 00:49:02,110 --> 00:49:05,850 И у ствари, иако је ово Филе, фросхим нула дот ПХП, 1135 00:49:05,850 --> 00:49:11,470 има коментар ПХП на врху од тога, то је само ХТМЛ. 1136 00:49:11,470 --> 00:49:17,655 Али с друге стране, ако се отвори, хајдемо рецимо, региструјте нула дот ПХП, која 1137 00:49:17,655 --> 00:49:19,550 само има велики коментара на врху. 1138 00:49:19,550 --> 00:49:26,500 Ово такође изгледа готово у потпуности као ХТМЛ, осим за шта? 1139 00:49:26,500 --> 00:49:29,350 Линија, шта, 21 изгледа мало чудно. 1140 00:49:29,350 --> 00:49:32,739 >> Али приметио сам улазак ПХП режим са отвореним брацкет вопрос ПХП. 1141 00:49:32,739 --> 00:49:33,780 Онда имам неке ствари. 1142 00:49:33,780 --> 00:49:36,724 И онда на крају тог реда Скоро сам, Куестион Марк ПХП. 1143 00:49:36,724 --> 00:49:38,390 И то је оно што подразумевамо под измешаних. 1144 00:49:38,390 --> 00:49:41,910 Можете написати ХТМЛ који сте управо желите да сервер испљунути. 1145 00:49:41,910 --> 00:49:45,090 Али, ако желите да урадите нешто динамична партваи преко странице, 1146 00:49:45,090 --> 00:49:47,699 Као убаците своје име или дорм или ниво комфора, 1147 00:49:47,699 --> 00:49:49,490 Могу да користим функцију попут Принт Р што је 1148 00:49:49,490 --> 00:49:52,492 принт рекурзиван, што само значи одштампате ову променљиву, то форматирање 1149 00:49:52,492 --> 00:49:53,200 kako god želite. 1150 00:49:53,200 --> 00:49:55,880 То стварно није за људске сврхе, то је само 1151 00:49:55,880 --> 00:49:58,290 за отклањање грешака или дијагностичке сврхе. 1152 00:49:58,290 --> 00:49:59,460 Тако да сам ја то урадио. 1153 00:49:59,460 --> 00:50:06,100 >> Ако уместо тога одем фросхимс два тачка ПХП приметити да је акција ове форме 1154 00:50:06,100 --> 00:50:09,680 није регистрован нула дот ПХП као олд-- је претходни је био. 1155 00:50:09,680 --> 00:50:11,222 Али је регистрована два дот ПХП. 1156 00:50:11,222 --> 00:50:13,680 Дакле, хајде да погледамо како ова понаша мало другачије. 1157 00:50:13,680 --> 00:50:15,140 Ако одем у верзији два. 1158 00:50:15,140 --> 00:50:20,430 Ако овде, ако се региструју као Давида мање, удобно, из дому на Матхевс, 1159 00:50:20,430 --> 00:50:21,480 registrovati. 1160 00:50:21,480 --> 00:50:23,770 Дакле, овај пут је рекао, су регистровани, не баш. 1161 00:50:23,770 --> 00:50:25,370 Хајде да видимо шта сам урадио овде. 1162 00:50:25,370 --> 00:50:29,760 Ако погледате регистар два дот ПХП ово има још мало ПХП код. 1163 00:50:29,760 --> 00:50:35,410 Мало је чистији, мада је и даље обавија мало дуго на овој линији. 1164 00:50:35,410 --> 00:50:36,260 Обратите овде. 1165 00:50:36,260 --> 00:50:40,300 Ја одштампати своју ХТМЛ тагове, моја глава ознака, мој наслов таг, глава, тело. 1166 00:50:40,300 --> 00:50:45,410 >> И онда почнем да кажем ствари као што унесете ПХП режим. 1167 00:50:45,410 --> 00:50:48,540 И тако тага, отворена заграда ПХП-- знак питања тект каже, 1168 00:50:48,540 --> 00:50:53,460 хеј, сервера, екецуте-- тумаче следеће ствари као ПХП 1169 00:50:53,460 --> 00:50:55,030 док не видите крај ознаку. 1170 00:50:55,030 --> 00:50:58,590 И иако можда не знате било друга књига о ПХП него што сте видели до сада, 1171 00:50:58,590 --> 00:51:01,290 можете прочитати врста је прилично интуитивно. 1172 00:51:01,290 --> 00:51:10,670 Ако име је празна, или удобност празна или спаваоница је празна, шта да радим? 1173 00:51:10,670 --> 00:51:12,830 Шта да кажем за корисника? 1174 00:51:12,830 --> 00:51:15,330 Морате навести своје име, удобност, и спаваоница, и тако даље. 1175 00:51:15,330 --> 00:51:17,750 Иначе, ја кажем да јеси регистрован, добро не баш. 1176 00:51:17,750 --> 00:51:19,190 >> И не кажем баш јер нема базе података. 1177 00:51:19,190 --> 00:51:20,200 Ја не радим ништа са подацима. 1178 00:51:20,200 --> 00:51:22,408 Ја га само бацити за демонстрацију. 1179 00:51:22,408 --> 00:51:24,320 Сада сам некако скимпед преко линије 22. 1180 00:51:24,320 --> 00:51:26,400 Има још синтакса тамо, али знак долара 1181 00:51:26,400 --> 00:51:28,320 наглашавају порука је интересантно. 1182 00:51:28,320 --> 00:51:30,300 И то је оно што је лепо о ПХП. 1183 00:51:30,300 --> 00:51:35,610 У ПХП, имате оно што се назива а неколико супер глобалне променљиве. 1184 00:51:35,610 --> 00:51:38,430 Они су нека врста још важније од глобалних променљивих. 1185 00:51:38,430 --> 00:51:41,370 И ово, сви капитализован као што су, долазе са ПХП. 1186 00:51:41,370 --> 00:51:44,550 Дакле, ако имате сервер који има веб сервер инсталиран, као и Апацхе, 1187 00:51:44,550 --> 00:51:49,390 и инсталирате језик Подршка за ПХП, све Одједном ти 1188 00:51:49,390 --> 00:51:52,250 да почнете да користите ове супер глобалне променљиве у вашем коду. 1189 00:51:52,250 --> 00:51:54,330 >> А шта је лепо у вези ПХП је да ако само 1190 00:51:54,330 --> 00:51:57,540 напише датотеку која се завршава у дот ПХП је ставити на веб сервер, 1191 00:51:57,540 --> 00:52:01,260 и онда поднесе пријаву за њега преко тог акционог таг и форме таг, 1192 00:52:01,260 --> 00:52:05,110 да је акција атрибут у облик ознака, ПХП и веб 1193 00:52:05,110 --> 00:52:09,360 потпуно схвати како да зграби све те кључне вредности парови се 1194 00:52:09,360 --> 00:52:11,633 УРЛ адресе као питање Марк К једнако мачке, 1195 00:52:11,633 --> 00:52:14,782 она ће схватити како к и мачке. 1196 00:52:14,782 --> 00:52:17,710 Ако пошаљете фотографију, или име, или лозинке да воле Фацебоок, 1197 00:52:17,710 --> 00:52:21,360 ПХП ће схватити за вас где све те податке је. 1198 00:52:21,360 --> 00:52:23,821 И то ће предати ти асоцијативна низ 1199 00:52:23,821 --> 00:52:27,560 зове знак доллара доња црта порука, или долар знак подвучем да, 1200 00:52:27,560 --> 00:52:30,590 у зависности од тога да ли сте коришћењем добити или пост поднеске. 1201 00:52:30,590 --> 00:52:32,950 И то ће вас предати супер глобална променљива, 1202 00:52:32,950 --> 00:52:37,254 тако да ако желите да добијете на име да корисник доставити путем тог веб 1203 00:52:37,254 --> 00:52:41,894 облик, буквално само реци име у супер глобалне променљиве, цитат, 1204 00:52:41,894 --> 00:52:43,380 Крај цитата, име. 1205 00:52:43,380 --> 00:52:46,144 И цитат, под знацима навода удобност, и цитат, под знацима навода спаваоница. 1206 00:52:46,144 --> 00:52:48,810 И ми ћемо бити у стању да уради ово и много више са ПХП. 1207 00:52:48,810 --> 00:52:50,540 И иако је то било вихор поглед на њега, 1208 00:52:50,540 --> 00:52:51,980 ћемо ронити у много следеће недеље. 1209 00:52:51,980 --> 00:52:54,247 Ми ћемо увести базу података тако да у ствари 1210 00:52:54,247 --> 00:52:56,816 ће почети имплементацију твоја е-трговина басед-- 1211 00:52:56,816 --> 00:52:59,150 Као сајту у тренутку само недељу дана. 1212 00:52:59,150 --> 00:53:02,750 Дакле, видимо се следећи пут, и Надам се да имаш текстуалне поруке. 1213 00:53:02,750 --> 00:53:05,450 Здраво. 1214 00:53:05,450 --> 00:53:06,950 >> [Мусиц плаиинг] 1215 00:53:06,950 --> 00:53:11,450 1216 00:53:11,450 --> 00:53:12,950 >> [ОТВАРАЊЕ ВРАТА] 1217 00:53:12,950 --> 00:53:14,475 >> Звучник 2: Хеј. 1218 00:53:14,475 --> 00:53:15,350 Спеакер 3: Шта има? 1219 00:53:15,350 --> 00:53:17,750 Звучник 2: Шта радиш? 1220 00:53:17,750 --> 00:53:19,850 Спеакер 3: Рад на проблем сету. 1221 00:53:19,850 --> 00:53:21,050 Звучник 2: Лепо. 1222 00:53:21,050 --> 00:53:22,550 Баци коску. 1223 00:53:22,550 --> 00:53:23,150 >> [БАЦИ КОСКУ] 1224 00:53:23,150 --> 00:53:25,584 >> Шта су- Ух, шта радиш овде? 1225 00:53:25,584 --> 00:53:26,750 Спеакер 3: Само хангинг оут. 1226 00:53:26,750 --> 00:53:28,134 Управо сам се вратио из теретане. 1227 00:53:28,134 --> 00:53:30,050 Нисам могао а да не приметити када смо високо-фивед, 1228 00:53:30,050 --> 00:53:32,450 да имате прилично грубе руке. 1229 00:53:32,450 --> 00:53:33,950 Да ли идете у теретану? 1230 00:53:33,950 --> 00:53:35,150 >> Звучник 2: Не 1231 00:53:35,150 --> 00:53:36,650 Ne. 1232 00:53:36,650 --> 00:53:38,450 >> Спеакер 3: Човече, изгледаш прилично велик. 1233 00:53:38,450 --> 00:53:45,950 Што је лоше, јер сви знају 8-Лопта је велики човек на кампусу. 1234 00:53:45,950 --> 00:53:48,050 Баци коску. 1235 00:53:48,050 --> 00:53:49,550 >> Звучник 2: Ух, не. 1236 00:53:49,550 --> 00:53:50,450 Не, мислим да сам добро. 1237 00:53:50,450 --> 00:53:52,300 Мислим да сам добро. 1238 00:53:52,300 --> 00:53:54,097