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