1 00:00:00,000 --> 00:00:05,340 2 00:00:05,340 --> 00:00:07,370 >> Даг Ллоид: Тако смо урађено много посла у Ц, 3 00:00:07,370 --> 00:00:09,536 и Ц је стварно кул Језик јер вам даје 4 00:00:09,536 --> 00:00:12,840 способност да се заиста зарони низак ниво у својим програмима. 5 00:00:12,840 --> 00:00:16,810 Ми добијамо да радимо ствари као Заиста минута као манипулацију 6 00:00:16,810 --> 00:00:18,800 индивидуални бајтова меморије. 7 00:00:18,800 --> 00:00:21,420 Подсетимо се да показивачи стварно дозвољавају нам да флексибилност. 8 00:00:21,420 --> 00:00:25,260 >> Али ми увек треба да има да је ниво фино зрно детаља 9 00:00:25,260 --> 00:00:26,820 у нашим програмима? 10 00:00:26,820 --> 00:00:28,210 Вероватно не, зар не? 11 00:00:28,210 --> 00:00:30,376 А ако ћемо имати траде-офф између тога 12 00:00:30,376 --> 00:00:32,911 у стању да заиста, заиста минуте ствари и заиста, заиста 13 00:00:32,911 --> 00:00:35,910 велике ствари које не треба да мисле о, не морамо да имплементирају 14 00:00:35,910 --> 00:00:40,290 ови заиста великих идеја ако већ су изграђена за нас, 15 00:00:40,290 --> 00:00:43,980 углавном за изградњу велике програми или велике пројекте, 16 00:00:43,980 --> 00:00:49,130 вероватно ћемо грешити на страни да су више језика ствари изграђен у 17 00:00:49,130 --> 00:00:51,300 за нас, уместо низак ниво ствари. 18 00:00:51,300 --> 00:00:53,970 И ту ПХП-заиста долази у. 19 00:00:53,970 --> 00:00:58,200 >> Дакле, један од разлога да учимо ПХП у ЦС50 20 00:00:58,200 --> 00:01:01,020 је да је то јако инспирисан Ц И у ствари, по мом мишљењу, 21 00:01:01,020 --> 00:01:05,140 Заиста постоје два прогениторне језици који 22 00:01:05,140 --> 00:01:08,200 су веома честе данас. 23 00:01:08,200 --> 00:01:10,110 Ц и Лисп. 24 00:01:10,110 --> 00:01:13,280 И они су предак језика јер сваки други савременог програмирања 25 00:01:13,280 --> 00:01:17,380 језик који је развио Од тада је инспирисана 26 00:01:17,380 --> 00:01:20,330 од једне или друге синтаксически. 27 00:01:20,330 --> 00:01:26,160 ПХП је веома сличан синтаксички Ц, док је језицима као што Сцхеме, 28 00:01:26,160 --> 00:01:27,900 на пример, која Можда сте чули, 29 00:01:27,900 --> 00:01:32,070 је веома инспирисан језику зове ЛИСП, што је старији језика. 30 00:01:32,070 --> 00:01:34,220 >> Дакле, разлог учимо ПХП-у ЦС50 је да, 31 00:01:34,220 --> 00:01:37,730 знајући Ц као фундаментално као ти у овом тренутку, 32 00:01:37,730 --> 00:01:41,280 покупити ПХП коју ти даје Способност да се уради много веће ствари нивоу 33 00:01:41,280 --> 00:01:44,710 него, Ц не, није толико од препрека, 34 00:01:44,710 --> 00:01:48,230 зато што већ имате Основна идеја синтаксе. 35 00:01:48,230 --> 00:01:50,590 Ц је био око за готово 45 година у овом тренутку. 36 00:01:50,590 --> 00:01:52,780 ПХП је био око за око 20 година. 37 00:01:52,780 --> 00:01:57,080 И у том 25 година У међувремену, програмера 38 00:01:57,080 --> 00:02:01,540 утврђено да су много би а имају способности вишем нивоу, 39 00:02:01,540 --> 00:02:04,970 и грешке и борбе од 20 година између 40 00:02:04,970 --> 00:02:08,210 довело до ПХП и другим модерним језицима. 41 00:02:08,210 --> 00:02:11,039 >> ПХП је велики избор језик за софтвер 42 00:02:11,039 --> 00:02:14,042 да аллов-- за софтвер то-- где си 43 00:02:14,042 --> 00:02:16,250 треба да урадимо ствари које у Ц су у ствари компликована. 44 00:02:16,250 --> 00:02:18,480 Тако на пример, радни са стрингс у Ц 45 00:02:18,480 --> 00:02:21,709 је веома компликовано, јер као што знамо, жице у Ц 46 00:02:21,709 --> 00:02:23,250 заиста само низови знакова. 47 00:02:23,250 --> 00:02:25,230 То није уграђена тип података. 48 00:02:25,230 --> 00:02:28,220 Или можда још битније, нешто што нисмо ни покрити у Ц, 49 00:02:28,220 --> 00:02:30,360 ста ако треба да урадите неки умрежавање рачунара? 50 00:02:30,360 --> 00:02:30,860 У реду? 51 00:02:30,860 --> 00:02:34,920 >> Ц има способност да то уради, али тако је волшебни и тако тешко да заиста раде. 52 00:02:34,920 --> 00:02:37,580 Зар не би било лепо ако Језик је имао уграђен, лак начин 53 00:02:37,580 --> 00:02:38,910 да спроведе умрежавање? 54 00:02:38,910 --> 00:02:43,420 А ПХП је језик који чини да, или олакшава да, доста висе. 55 00:02:43,420 --> 00:02:47,740 Као што сам рекао, ПХП је веома тешко надахнута Ц. Синтакса је врло слична. 56 00:02:47,740 --> 00:02:51,760 И тако, надамо се, требало да чине прелаз од једне до друге 57 00:02:51,760 --> 00:02:54,710 мало мекше него неки други језици могу бити. 58 00:02:54,710 --> 00:02:58,800 >> За почетак писања ПХП, само отвори фајл са екстензијом .пхп фајл. 59 00:02:58,800 --> 00:03:00,670 Технички ово није заправо очекује, 60 00:03:00,670 --> 00:03:04,495 али ако желите нешто попут синтаксе наглашавајући у ИДЕ, тако тог типа 61 00:03:04,495 --> 00:03:07,620 имена, или имена варијабли, функције, знате, кључне речи на језику 62 00:03:07,620 --> 00:03:10,090 су наглашени специфична боја, обично 63 00:03:10,090 --> 00:03:14,020 Желим да именује своје датотеке са одређени филе ектенсион. 64 00:03:14,020 --> 00:03:18,430 Тако смо по имену наше фајл са .пхп продужетак, али и са ПХП, 65 00:03:18,430 --> 00:03:23,310 све ПХП код пишемо у томе датотека мора бити затворени у овим ПХП 66 00:03:23,310 --> 00:03:25,190 граничници да видимо овде на екрану. 67 00:03:25,190 --> 00:03:27,910 Угао носач пхп за почетак. 68 00:03:27,910 --> 00:03:30,860 Тада пишемо све наше ПХП код који желимо између. 69 00:03:30,860 --> 00:03:32,260 И онда ? 70 00:03:32,260 --> 00:03:34,710 угаона заграда да затворите. 71 00:03:34,710 --> 00:03:37,170 >> Ако то не урадимо ово, онда шта ће се десити? 72 00:03:37,170 --> 00:03:38,170 Неће се срушити. 73 00:03:38,170 --> 00:03:39,410 Неће се стварно упропасти наш програм. 74 00:03:39,410 --> 00:03:41,440 Али то неће имати ефекат који желимо. 75 00:03:41,440 --> 00:03:44,540 Шта ће се догодити, заиста, није да када покушамо и покренути овај програм, 76 00:03:44,540 --> 00:03:50,330 све не између тих делимитерс ће се штампати дословно. 77 00:03:50,330 --> 00:03:52,210 Неће се заправо изврши код, 78 00:03:52,210 --> 00:03:56,010 да ће само одштампајте га дословно. 79 00:03:56,010 --> 00:03:57,320 >> Зашто је тако? 80 00:03:57,320 --> 00:04:00,416 Дакле Ц је оно што је познато као компајлерском језику. 81 00:04:00,416 --> 00:04:03,040 Ти си вероватно упознат са корак прављења своје програме, 82 00:04:03,040 --> 00:04:07,820 окретањем .ц фајлова и .х фајлове у једној извршне са шминком, 83 00:04:07,820 --> 00:04:11,130 посебно уз Цланг као наш преводилац. 84 00:04:11,130 --> 00:04:13,030 ПХП, међутим, не имају ову еквивалент. 85 00:04:13,030 --> 00:04:15,600 ПХП је оно што се зове тумачи језика. 86 00:04:15,600 --> 00:04:16,760 А шта то значи? 87 00:04:16,760 --> 00:04:20,680 >> Па, то значи да не морате да га претвори наш изворни код за нула и јединица 88 00:04:20,680 --> 00:04:21,470 унапријед. 89 00:04:21,470 --> 00:04:23,900 Уместо тога, постоји програм, која се још назива 90 00:04:23,900 --> 00:04:29,771 ПХП да разуме ПХП и могу некако успети у лету. 91 00:04:29,771 --> 00:04:32,520 То није баш тачно тачни, али то је прилично добра аналогија 92 00:04:32,520 --> 00:04:33,760 шта се дешава. 93 00:04:33,760 --> 00:04:37,230 То је тумачење оних нуле и јединице у ходу. 94 00:04:37,230 --> 00:04:40,160 И тако, ако се не зна како да обради несто, 95 00:04:40,160 --> 00:04:42,800 ако не зна како да Процес ПХП, вероватно 96 00:04:42,800 --> 00:04:44,680 хтео да ставим тај текст тамо, зар не? 97 00:04:44,680 --> 00:04:48,960 >> Вероватно сте желели да ставите код у тамо, чак и ако није међу ПХП-- 98 00:04:48,960 --> 00:04:50,035 ПХП граничници. 99 00:04:50,035 --> 00:04:51,910 Али-- па не иде да га обришете за вас, 100 00:04:51,910 --> 00:04:53,576 само ће у основи је одбаците. 101 00:04:53,576 --> 00:04:55,550 Тако да ће штампање да се на екрану. 102 00:04:55,550 --> 00:04:57,150 >> Ово изгледа као да је то лоша ствар, али заправо је 103 00:04:57,150 --> 00:04:58,220 Биће то заиста добра ствар, јер ћемо 104 00:04:58,220 --> 00:05:00,390 види када говоримо о Пхп веб развој, 105 00:05:00,390 --> 00:05:04,010 јер то значи да можемо уметне ПХП и ХТМЛ. 106 00:05:04,010 --> 00:05:06,640 Можемо их користити заједно створити више динамичан веб страницу. 107 00:05:06,640 --> 00:05:10,650 Али више о томе у Видео на ПХП веб развој. 108 00:05:10,650 --> 00:05:12,021 >> Дакле, шта је синтакса ПХП? 109 00:05:12,021 --> 00:05:13,520 То је оно што овај видео је све о томе. 110 00:05:13,520 --> 00:05:14,850 Хајде да причамо о томе. 111 00:05:14,850 --> 00:05:16,490 >> Дакле, за почетак се, променљиве. 112 00:05:16,490 --> 00:05:18,030 ПХП променљиве постоје. 113 00:05:18,030 --> 00:05:20,067 Само Постоје два велика Разлике из Ц. 114 00:05:20,067 --> 00:05:21,900 Први је да постоји Тип спецификатор. 115 00:05:21,900 --> 00:05:24,245 Ми не морам да кажем инт, Чар, пловак, све те ствари. 116 00:05:24,245 --> 00:05:25,620 Не морамо више да урадим. 117 00:05:25,620 --> 00:05:26,810 ПХП је модеран језик. 118 00:05:26,810 --> 00:05:28,910 То могу да схватим шта си покушавамо да урадимо или да бест 119 00:05:28,910 --> 00:05:30,451 Ваљда о томе шта покушавате да урадите. 120 00:05:30,451 --> 00:05:31,700 Дакле, то је лепо. 121 00:05:31,700 --> 00:05:35,330 >> Друга ствар је да све променљиве имена морају да почну са знаком долара. 122 00:05:35,330 --> 00:05:36,940 То је нешто да се навикнем на. 123 00:05:36,940 --> 00:05:39,496 То је мало чудно, јер то је тако да може да разуме ПХП 124 00:05:39,496 --> 00:05:40,870 шта је променљива, а шта није. 125 00:05:40,870 --> 00:05:43,340 Дакле, сваки Име променљиве почиње са знаком долара. 126 00:05:43,340 --> 00:05:46,884 Дакле, у Ц бисмо могли рећи нешто овако, инт = 54. 127 00:05:46,884 --> 00:05:48,550 Не морамо то да урадим више у ПХП. 128 00:05:48,550 --> 00:05:52,540 Можемо само рећи $ х = 54. 129 00:05:52,540 --> 00:05:55,920 И можемо рећи, на пример, у Ц, ако смо фунта-укључују ЦС50 .Х 130 00:05:55,920 --> 00:06:00,314 заглавље датотеке, могло би се рећи стринг израз = "Ово је ЦС50." 131 00:06:00,314 --> 00:06:01,980 Не морамо то да урадим у ПХП-у, мада. 132 00:06:01,980 --> 00:06:04,865 Можемо само рећи $ фразу = "Ово је ЦС50." 133 00:06:04,865 --> 00:06:08,760 И, у ствари, стринг сада уграђени тип података у ПХП-у, 134 00:06:08,760 --> 00:06:10,950 односно тект разуме шта је стринг. 135 00:06:10,950 --> 00:06:15,612 То је одвојено од низа карактера као што је то у Ц. 136 00:06:15,612 --> 00:06:17,570 Све ваше омиљене условне изјаве Ц 137 00:06:17,570 --> 00:06:19,520 су и даље на располагању за вас да користите. 138 00:06:19,520 --> 00:06:21,140 Дакле, није велика транзиција тамо. 139 00:06:21,140 --> 00:06:23,400 Можемо говоре-- можемо имати ако изјаве попут ове. 140 00:06:23,400 --> 00:06:28,210 ако $ и 43, или $ З = 15. 141 00:06:28,210 --> 00:06:29,690 Дакле, то је прилично једноставан. 142 00:06:29,690 --> 00:06:31,980 Можемо имати ако и друго. 143 00:06:31,980 --> 00:06:34,210 Можемо имати ако и иф. 144 00:06:34,210 --> 00:06:36,430 >> И приметио нешто лепо овде, и ово 145 00:06:36,430 --> 00:06:39,620 је врста један од оних Предности ПХП наспрам Ц, обавештења 146 00:06:39,620 --> 00:06:41,510 коју функцију Ми не користимо овде? 147 00:06:41,510 --> 00:06:47,737 Ми користимо == да упореди променљива, $ име, у стринг. 148 00:06:47,737 --> 00:06:49,070 Нисмо могли да у Ц, зар не? 149 00:06:49,070 --> 00:06:53,200 Морали смо да користите функцију која се зове СтрЦомп или СтрЕндЦомп или било 150 00:06:53,200 --> 00:06:54,840 њених повезаних рођака. 151 00:06:54,840 --> 00:06:56,980 >> И тако већ видимо ове предности. 152 00:06:56,980 --> 00:07:00,930 Не морамо да урадимо нешто као глупо или можда неинтуитивном 153 00:07:00,930 --> 00:07:03,540 као позвати функцију под називом СтрЦомп ако само желите да тестирате 154 00:07:03,540 --> 00:07:05,237 да ли је вредност једнака стринг. 155 00:07:05,237 --> 00:07:07,820 Само би једнако једнако, као што сам могао било шта друго. 156 00:07:07,820 --> 00:07:09,560 Дакле, ту је предност. 157 00:07:09,560 --> 00:07:13,350 >> Понекад, узгред буди речено, могао би види иф као једна реч, иф. 158 00:07:13,350 --> 00:07:14,910 И то је у реду у ПХП као добро. 159 00:07:14,910 --> 00:07:17,020 Дакле, понекад можда видети. 160 00:07:17,020 --> 00:07:17,790 То није грешка. 161 00:07:17,790 --> 00:07:21,830 ПХП заправо разуме иф. 162 00:07:21,830 --> 00:07:23,980 Не знам зашто су је одлучила да спроведе да, 163 00:07:23,980 --> 00:07:28,220 али као што смо видели много пута широм наше видео до сада, 164 00:07:28,220 --> 00:07:30,460 ми програмери лове ит ако можемо да урадимо ствари брзо, 165 00:07:30,460 --> 00:07:33,660 тако да се отараси тог простора је очигледно велика предност. 166 00:07:33,660 --> 00:07:34,800 >> Дакле, то је, ако и иф. 167 00:07:34,800 --> 00:07:37,540 Такође имамо тројног оператера, опозив знак питања дебелог црева, 168 00:07:37,540 --> 00:07:43,262 за стварно кратко форму ако друго или условно гранање. 169 00:07:43,262 --> 00:07:45,470 И очигледно, у томе, оно што покушавамо да урадимо овде 170 00:07:45,470 --> 00:07:49,720 се доделити променљиву $ писмо било истинито или лажно, 171 00:07:49,720 --> 00:07:54,110 зависно да ли $ вар је алфабетски знак. 172 00:07:54,110 --> 00:07:57,320 Дакле, ово је прилично сличан исалпха да смо упознати са из Ц. 173 00:07:57,320 --> 00:07:59,010 То је нека врста еквивалента у ПХП. 174 00:07:59,010 --> 00:08:01,550 Ова функција је очигледно зове цтипе_алпха, 175 00:08:01,550 --> 00:08:03,450 али тако је како ми то радимо у ПХП. 176 00:08:03,450 --> 00:08:08,560 Дакле, све ово ће бити је, ако $ вар писмо, $ писмо је истина. 177 00:08:08,560 --> 00:08:13,820 Ако $ вар није писмо, $ писмо је лажна. 178 00:08:13,820 --> 00:08:15,820 >> Такође имамо и даље прекидач изјаве. 179 00:08:15,820 --> 00:08:17,870 Подсећамо и оне из Ц као добро. 180 00:08:17,870 --> 00:08:22,480 На самом врху тамо, тако ми радимо нешто слично гет Инт или се стринг. 181 00:08:22,480 --> 00:08:23,845 Дакле, ПХП има да изграђен. 182 00:08:23,845 --> 00:08:25,470 Ми више не треба ЦС50 библиотеку. 183 00:08:25,470 --> 00:08:27,237 Ми само можемо користити функцију реадлине. 184 00:08:27,237 --> 00:08:29,820 Шта то це да уради је штампање од поруци, "Ваша држава, 185 00:08:29,820 --> 00:08:33,820 молим те ", а затим трепери упит чекајући корисника на улаз 186 00:08:33,820 --> 00:08:34,739 неке информације. 187 00:08:34,739 --> 00:08:36,530 Сада погледајмо шта друго можемо да урадимо са прекидачем. 188 00:08:36,530 --> 00:08:39,105 Ако сте користили раније, Можда се сећате да прекидач 189 00:08:39,105 --> 00:08:44,960 је ограничена прилицно целе бројеве и ликови, али сада можемо користити жице. 190 00:08:44,960 --> 00:08:50,190 И у ствари, у изјави прекидач у ПХП је доста флексибилнији 191 00:08:50,190 --> 00:08:54,880 од свог рођака из Ц. 192 00:08:54,880 --> 00:08:55,380 Лоопс. 193 00:08:55,380 --> 00:08:58,130 Као уређаја, сви Ваши стари фаворити су и даље ту. 194 00:08:58,130 --> 00:09:00,740 Имамо вхиле петље да рачунају од 1 до 100 у овом предмету. 195 00:09:00,740 --> 00:09:03,940 Ми смо радили док петље се то рачуна од 1 до 100, 196 00:09:03,940 --> 00:09:06,200 и имамо за петље се то рачуна од 1 до 100. 197 00:09:06,200 --> 00:09:07,220 Дакле, нема велики скок тамо. 198 00:09:07,220 --> 00:09:09,360 Синтакса је прилично много исти, 199 00:09:09,360 --> 00:09:11,760 осим сада смо користећи уместо долар знак променљива 200 00:09:11,760 --> 00:09:17,260 проглашења целе променљивих или тако нешто за наше шалтерима. 201 00:09:17,260 --> 00:09:20,090 >> Ево где ствари постају Много боље него Ц, мада. 202 00:09:20,090 --> 00:09:21,020 Низова. 203 00:09:21,020 --> 00:09:23,020 Тако се сећате кад смо били говоримо о Ц, у циљу 204 00:09:23,020 --> 00:09:25,560 за нас да расте и смањују комплета информација, 205 00:09:25,560 --> 00:09:28,310 морали смо да те некако дефаулту овом идејом повезане листе, 206 00:09:28,310 --> 00:09:30,780 јер Ц низови су фиксирани у величини. 207 00:09:30,780 --> 00:09:31,800 Нисмо могли да их смањи. 208 00:09:31,800 --> 00:09:32,930 Нисмо могли да их расте. 209 00:09:32,930 --> 00:09:36,074 Морали смо да прерасподели меморије и раде све ово лудило 210 00:09:36,074 --> 00:09:38,490 или користите повезане листе, које заузимају мало више простора. 211 00:09:38,490 --> 00:09:41,590 Али у ПХП-у, низови су више не фиксиран у величини. 212 00:09:41,590 --> 00:09:43,240 Они могу да расту и они могу смањити. 213 00:09:43,240 --> 00:09:46,660 Дакле, опет, ови 20 година која је постојала између првог пуштања Ц 214 00:09:46,660 --> 00:09:49,440 а прво издање ПХП одлучили смо да, знате, 215 00:09:49,440 --> 00:09:51,670 то би било сјајно ако можемо да урадимо то. 216 00:09:51,670 --> 00:09:54,100 И тако смо реализовали овај. 217 00:09:54,100 --> 00:09:58,040 >> Дакле, ПХП низови нису фиксиране у величина, и зато ПХП-не стварно 218 00:09:58,040 --> 00:10:03,090 има програмер усмерена напред појмови врста, 219 00:10:03,090 --> 00:10:05,110 можемо мешати типове података у нашим низова, такође. 220 00:10:05,110 --> 00:10:08,100 Дакле, ми чак не морају да користе све природних бројева или сви Флоатинг Поинтс, 221 00:10:08,100 --> 00:10:12,826 можемо да имамо комбинацију свих различите врсте у једној низу. 222 00:10:12,826 --> 00:10:14,700 Проглашавање низ је прилично јасно. 223 00:10:14,700 --> 00:10:16,116 То је као било која друга променљива. 224 00:10:16,116 --> 00:10:20,020 $ Нумс = арраи (1, 2, 3, 4), као низ функција 225 00:10:20,020 --> 00:10:22,760 који је уграђен у ПХП који ће створити низ за вас. 226 00:10:22,760 --> 00:10:28,315 То ствара низ од четири вредности, бројеви у овом случају, под називом $ нумс. 227 00:10:28,315 --> 00:10:29,940 И ту је више него један начин да то урадите. 228 00:10:29,940 --> 00:10:32,420 И идемо у види ово много у ПХП. 229 00:10:32,420 --> 00:10:36,380 ПХП је развијен од стране многих другачији људи и расте и расте и расте. 230 00:10:36,380 --> 00:10:40,050 Обично постоји не само две или три начина да то урадите нешто у ПХП, 231 00:10:40,050 --> 00:10:42,170 ту је обично као 10 или 20. 232 00:10:42,170 --> 00:10:45,300 Ево само још једна заједничка начин да се прогласи низ. 233 00:10:45,300 --> 00:10:48,310 $ Нумс = квадратних брацкет 1, 2, 3, 4. 234 00:10:48,310 --> 00:10:53,170 Дакле, ово је врста слична угла Ц је бр-- коврџаву браце запис, а. $ - 235 00:10:53,170 --> 00:10:58,525 или да ће бити инт Нумс квадрат брацкетс једнако коврџаве стезник 1, 2, 3, 4. 236 00:10:58,525 --> 00:11:02,710 У ПХП је $ Нумс = квадрат држачи 1, 2, 3, 4. 237 00:11:02,710 --> 00:11:08,920 Али оба ова примера овде ми дај низ од четири у овом случају природних бројева. 238 00:11:08,920 --> 00:11:10,920 >> Шта ако желим да се осуши нешто сада? 239 00:11:10,920 --> 00:11:14,760 Па ја само могу да кажем $ Нумс 4, који Опет, ми смо и даље броји од 0 овде 240 00:11:14,760 --> 00:11:17,800 у ПХП ће бити пета елемент низа. 241 00:11:17,800 --> 00:11:18,990 Могу само да кажем да. 242 00:11:18,990 --> 00:11:22,860 Нећу да трпи сек кривица, јер је мој низ је само 243 00:11:22,860 --> 00:11:24,337 настави да расте да прими то. 244 00:11:24,337 --> 00:11:25,420 То је лепо, зар не? 245 00:11:25,420 --> 00:11:28,400 А у ствари, не треба ни да одредите где желим да га ставим. 246 00:11:28,400 --> 00:11:31,220 Ја само могу да кажем ово и само тацк је право на крају, 247 00:11:31,220 --> 00:11:34,099 или сам могао чак само кажу $ Нумс 20 или 1.000. 248 00:11:34,099 --> 00:11:35,140 Није битно. 249 00:11:35,140 --> 00:11:38,330 То је и даље само да тацк је право на до краја. 250 00:11:38,330 --> 00:11:41,490 >> Тако да може да расте, а ми смо као- неће да га покрије овде, 251 00:11:41,490 --> 00:11:45,360 али могу да уплитање или трака елементи од низа, као, 252 00:11:45,360 --> 00:11:50,064 и низ ће се смањити за смештај који сада недостаје или празан простор. 253 00:11:50,064 --> 00:11:52,230 Постоји још један начин да се осуши нешто на низа, 254 00:11:52,230 --> 00:11:54,330 што је функција зове арраи_пусх. 255 00:11:54,330 --> 00:11:57,860 Па опет, само ова идеја буде у стању да раде ствари на много различитих начина. 256 00:11:57,860 --> 00:12:01,950 Дакле, видели смо три различита начина сада да се осуши један елемент на низа. 257 00:12:01,950 --> 00:12:06,900 Дакле, ово додаје још један елемент до краја $ Нумс низа. 258 00:12:06,900 --> 00:12:08,340 И можемо мешати наше врсте података. 259 00:12:08,340 --> 00:12:13,110 Тако сам могао имати низ не 1, 2, 3, 4, али 1, труе, 3, 4, 260 00:12:13,110 --> 00:12:16,420 где је истинито је Боолеан, а онда ако желим да се осуши на другом елементу 261 00:12:16,420 --> 00:12:20,860 у том низу, можда стринг, стринг "пет," Могао бих то да урадим. 262 00:12:20,860 --> 00:12:26,110 А сада моје низ би бе 1, истина, 3, 4, пет. 263 00:12:26,110 --> 00:12:28,640 Реч пет, а не цео број 5. 264 00:12:28,640 --> 00:12:31,270 Дакле, много флексибилности тамо. 265 00:12:31,270 --> 00:12:33,290 >> Флексибилност добија још боље, мада, 266 00:12:33,290 --> 00:12:37,530 јер ПХП има подршку за нечим назива асоцијативна низ. 267 00:12:37,530 --> 00:12:40,660 И некако смо разговарали нејасно о асоцијативних низова у Ц 268 00:12:40,660 --> 00:12:44,740 у контексту хасх табеле, јер шта асоцијативних низови су стварно све 269 00:12:44,740 --> 00:12:48,950 о праве кључ вредност паир мапирања. 270 00:12:48,950 --> 00:12:53,410 И у овом случају, ако кеис-- ми смо упознати са низовима из Ц, 271 00:12:53,410 --> 00:12:55,440 тастери су индекс бројева. 272 00:12:55,440 --> 00:12:57,530 0, 1, 2, 3. 273 00:12:57,530 --> 00:13:03,070 А вредности су оно што сматрају да арраи 0, низ 1, арраи 2, и тако даље. 274 00:13:03,070 --> 00:13:06,310 Дакле, тастери су индекси, и вредности су 275 00:13:06,310 --> 00:13:10,060 оно што је у том арраи локацији, одређено том индексу. 276 00:13:10,060 --> 00:13:15,130 >> Али у ПХП-у, не морамо да радимо ово појам низа 0, низ 1, низ 2 277 00:13:15,130 --> 00:13:15,830 више. 278 00:13:15,830 --> 00:13:21,025 Сада можете да користите стварне речи да мапира кључеве вредности. 279 00:13:21,025 --> 00:13:22,650 И тако сам могао рећи овако нешто. 280 00:13:22,650 --> 00:13:26,710 Ја би могло да створи низ користећи квадрат носач синтаксе на следећи начин. 281 00:13:26,710 --> 00:13:30,685 $ пице = квадратних заграда "сир", а затим 282 00:13:30,685 --> 00:13:37,210 ова врста двоструког стрелице нотацији, 8.99, "феферони," арров 10.99-- 9.99, 283 00:13:37,210 --> 00:13:37,880 и тако даље. 284 00:13:37,880 --> 00:13:39,060 И шта се овде дешава? 285 00:13:39,060 --> 00:13:41,040 Шта ја заправо радим? 286 00:13:41,040 --> 00:13:43,990 Ја сам стварање кључне вредност паир мапирање. 287 00:13:43,990 --> 00:13:49,060 Дакле, уместо да каже, на пример, пице: 0, комада 1, 2, пице 288 00:13:49,060 --> 00:13:52,350 Ја сада могу да кажем пице сир, пице феферони, 289 00:13:52,350 --> 00:13:55,120 и односе се на вредностима повезане са њима. 290 00:13:55,120 --> 00:13:56,970 >> Дакле, овде су наши кључеви у зелено. 291 00:13:56,970 --> 00:13:59,870 Сир, феферони, поврћа, Буффало пилетина. 292 00:13:59,870 --> 00:14:04,200 Овде је стрелица која чини ово кључна вриједност пар мапирање. 293 00:14:04,200 --> 00:14:07,420 А онда ту су вредности на тој арраи локацији. 294 00:14:07,420 --> 00:14:10,330 Дакле, то је као да кажеш низ 0 једнако 8.99. 295 00:14:10,330 --> 00:14:11,720 Кључ је 0. 296 00:14:11,720 --> 00:14:13,600 Вредност је 8.99. 297 00:14:13,600 --> 00:14:19,370 Ја сада могу да кажем низа сир, или ово Случај пице сир, сир је кључ, 298 00:14:19,370 --> 00:14:23,340 и оно што сам наћи на пица сир је 8.99. 299 00:14:23,340 --> 00:14:25,540 То је вредност која сам тамо налазе. 300 00:14:25,540 --> 00:14:28,124 >> Дакле, могу да кажем ствари волим. $ пица сир = 7.99. 301 00:14:28,124 --> 00:14:29,040 Реци ми да распродају. 302 00:14:29,040 --> 00:14:31,750 Желим дис-- Желим да одустане цена сира пица. 303 00:14:31,750 --> 00:14:35,620 Или могу користити поврће пица као део стања, 304 00:14:35,620 --> 00:14:39,990 или могу додати нови елемент моје Арраи, баш као што сам могао да урадим раније. 305 00:14:39,990 --> 00:14:44,680 Ја могу додати нови елемент на ово асоцијативна низ са кључном "сланини" 306 00:14:44,680 --> 00:14:49,250 а вредност 13.49. 307 00:14:49,250 --> 00:14:53,820 >> Али ова врста представља проблем, ако мислите о томе на тренутак. 308 00:14:53,820 --> 00:14:55,721 Како бисмо поновити кроз овај низ? 309 00:14:55,721 --> 00:14:56,220 Jel tako? 310 00:14:56,220 --> 00:14:59,820 У Ц, ми бисмо имати фор петља, типично да 311 00:14:59,820 --> 00:15:03,650 ће ићи од 0 до величина низа минус 1. 312 00:15:03,650 --> 00:15:08,060 Низ има н елемената у код, валидни показатељи су 0 до н минус 1. 313 00:15:08,060 --> 00:15:11,530 Дакле, могли бисмо користи за петљу у корак кроз сваки елемент. 314 00:15:11,530 --> 00:15:13,530 >> Али то није стварно случај више, зар не? 315 00:15:13,530 --> 00:15:17,360 Сада, где имамо кључну вредност пар мапирања где су кључеви речи, 316 00:15:17,360 --> 00:15:19,970 како да поновити над свим речима? 317 00:15:19,970 --> 00:15:22,420 Па, срећом, ПХП има начин да се баве и ово, 318 00:15:22,420 --> 00:15:24,580 па ћемо се вратити скочити да петље за секунду 319 00:15:24,580 --> 00:15:30,780 увести Четврта врста петље која постоји у ПХП-зове фореацх петље. 320 00:15:30,780 --> 00:15:34,430 И шта Еогеасп петља ради је у основи је иста идеја. 321 00:15:34,430 --> 00:15:36,060 Можете га користити за било коју врсту низа. 322 00:15:36,060 --> 00:15:38,100 Али то је у основи Иста идеја као за петљу, 323 00:15:38,100 --> 00:15:40,750 изузев уместо да користите индек бројева, само 324 00:15:40,750 --> 00:15:45,830 имају овај чудан синтаксу где зовете сваки елемент 325 00:15:45,830 --> 00:15:47,550 име за потребе овог петље. 326 00:15:47,550 --> 00:15:49,258 >> Дакле, у овом случају, фореацх ($ низ ас $ кеи). 327 00:15:49,258 --> 00:15:52,900 328 00:15:52,900 --> 00:15:56,450 У основи, као тај коментар белешке, унутар тог фореацх петље, 329 00:15:56,450 --> 00:16:00,466 то ће ићи преко сваког елеменат $ арраи, која је обично 330 00:16:00,466 --> 00:16:03,340 Биће то асоцијативна низ, али може заиста бити било која врста арраи 331 00:16:03,340 --> 00:16:05,419 који желите у ПХП. 332 00:16:05,419 --> 00:16:07,210 И сваки пут када у фор петљу да би могао 333 00:16:07,210 --> 00:16:13,780 рекао $ арраи квадратних заграде $ ја, само могу рећи $ кључ. 334 00:16:13,780 --> 00:16:22,340 Тако да $ кључни постаје алиас за сваку Индекс вашег ПХП асоцијативног низ, 335 00:16:22,340 --> 00:16:23,710 и тако да можете га користити тако. 336 00:16:23,710 --> 00:16:25,897 >> Тако, на пример, имамо Сада имамо нашег пице низ. 337 00:16:25,897 --> 00:16:27,730 Ја сам некако ушушкан у углу тамо 338 00:16:27,730 --> 00:16:31,080 тако да могу да га користе да раде брзо примјер. 339 00:16:31,080 --> 00:16:36,420 Ако кажем фореацх ($ пице као $ пица), па, шта се дешава? 340 00:16:36,420 --> 00:16:42,400 Па, ја ћу поновити кроз сваку један елемент низа $ пица, 341 00:16:42,400 --> 00:16:46,670 и на тај начин, ја ћу да зовем сваки елемент, кад сам унутра 342 00:16:46,670 --> 00:16:49,400 тела тога за петље, $ пицу. 343 00:16:49,400 --> 00:16:52,440 >> Дакле, то је нека врста станд-у, опозив, да $ пица 344 00:16:52,440 --> 00:16:59,140 је станд-у за казивање $ пице квадратних заграде $ И 345 00:16:59,140 --> 00:17:03,370 Ако смо помоћу фор петље, где смо могли да иду од $ И = 0 да, у овом случају, 346 00:17:03,370 --> 00:17:06,089 $ и = 3. 347 00:17:06,089 --> 00:17:09,780 Ако нисмо имали кључне вредности парове Овде, ово би био елемент 0, 1, 2, 3, 348 00:17:09,780 --> 00:17:16,390 и ми бисмо користи за петљу да иде $ пице 0, $ 1, $ пице пице 2, 349 00:17:16,390 --> 00:17:17,750 $ пице 3. 350 00:17:17,750 --> 00:17:23,130 Дакле, сада само $ пица је замењујући за тог појединачног кључа. 351 00:17:23,130 --> 00:17:25,630 >> Дакле, шта је ово да одштампате? 352 00:17:25,630 --> 00:17:29,030 Ја штампање $ пицу. 353 00:17:29,030 --> 00:17:35,270 Шта ћу наћи ат-- ако одштампати $ пице, $ И? 354 00:17:35,270 --> 00:17:35,770 Jel tako? 355 00:17:35,770 --> 00:17:38,680 Ако ћу да одштампате ИТХ елемент пица, 356 00:17:38,680 --> 00:17:40,070 шта ћу да одштампате? 357 00:17:40,070 --> 00:17:42,580 Идем да одштампали Вредности на тој локацији, зар не? 358 00:17:42,580 --> 00:17:45,370 Као да смо радили то у контексту Ц, 359 00:17:45,370 --> 00:17:49,786 не обично користе нашу итератор променљива, инт и = 0, и је мањи од 3, 360 00:17:49,786 --> 00:17:52,900 и ++, да одштампате 0, 1, 2, 3. 361 00:17:52,900 --> 00:17:57,500 Ми смо штампање низ 0, низ 1, низ 2, 3 низ. 362 00:17:57,500 --> 00:17:59,580 И шта ово исписује је то. 363 00:17:59,580 --> 00:18:01,150 То је списак цена. 364 00:18:01,150 --> 00:18:05,750 8.99, 9.99, 10.99, 11.99. 365 00:18:05,750 --> 00:18:06,900 >> Сада брзо напомена. 366 00:18:06,900 --> 00:18:10,900 Еогеасп петља не нужно одштампате ствари у ред. 367 00:18:10,900 --> 00:18:12,770 Није гарантовано. 368 00:18:12,770 --> 00:18:13,550 То обично ради. 369 00:18:13,550 --> 00:18:17,667 То је обично на основу налога у који су то елементи се додају низа, 370 00:18:17,667 --> 00:18:18,750 па имајте то на уму. 371 00:18:18,750 --> 00:18:20,830 То не би било у реду. 372 00:18:20,830 --> 00:18:23,930 Али Еогеасп петља ће поновити Сваки елемент преко 373 00:18:23,930 --> 00:18:25,060 низа у питању. 374 00:18:25,060 --> 00:18:27,980 У овом случају, опет, да је низ $ пице. 375 00:18:27,980 --> 00:18:32,920 >> Ја могу променити синтаксу, мада, ако Желим оба кључ и вредност. 376 00:18:32,920 --> 00:18:37,179 Уместо да се каже $ пице ас $ пицу, могу да кажем ово. 377 00:18:37,179 --> 00:18:39,470 И ако погледате шта сам истакнута у зелено овде, 378 00:18:39,470 --> 00:18:42,130 изгледа као кључног вредност пара мапирање. 379 00:18:42,130 --> 00:18:45,980 И тако, ако тебе-- чак и ако нисте сасвим сигуран шта ће то урадити, 380 00:18:45,980 --> 00:18:49,300 што вероватно можете погодити да $ прелив иде 381 00:18:49,300 --> 00:18:53,800 да буде кључна у овом случају и $ цена ће бити вредност. 382 00:18:53,800 --> 00:18:59,200 Дакле, ја сада замењује сваки елемент од $ пице као кључна вредност пар, 383 00:18:59,200 --> 00:19:03,900 и сада могу да се односе на тастеру и вредност, који би могао у руци, 384 00:19:03,900 --> 00:19:05,590 на пример, као следи. 385 00:19:05,590 --> 00:19:10,170 >> "Читав" - ово је много штампа дешава овдје-- "читав" 386 00:19:10,170 --> 00:19:17,300 прелив "пица кошта $" цену, а затим Ја одштампати период и обрнуту косу црту н. 387 00:19:17,300 --> 00:19:23,420 Дакле, сада, обавештење опет имам приступ кључ, $ прелив, а вредност, $ цена. 388 00:19:23,420 --> 00:19:26,647 Да ли можете да погодите шта је ово ће да одштампате? 389 00:19:26,647 --> 00:19:29,480 Има много штампаних изјава, али постоји само један обрнута коса црта н 390 00:19:29,480 --> 00:19:33,410 тако да ће штампати нешто на ентире-- на једној линији кода. 391 00:19:33,410 --> 00:19:36,965 >> Ако могу да се односе на тастеру а вредност, онда сада, 392 00:19:36,965 --> 00:19:39,090 уместо да буде у стању да одштампате ценама, 393 00:19:39,090 --> 00:19:41,330 Ја могу одштампати овако нешто. 394 00:19:41,330 --> 00:19:43,780 "Читав сира пица кошта $ 8.99." 395 00:19:43,780 --> 00:19:47,150 И сада користећи сву кеис-- сир, феферони, поврће, 396 00:19:47,150 --> 00:19:49,640 биво цхицкен-- и вредности. 397 00:19:49,640 --> 00:19:53,980 8.99, 9.99, 10.99, 11.99 Дакле, то је само другачији начин 398 00:19:53,980 --> 00:19:57,840 да уради фореацх петље да се уместо само дајући вам приступ вредностима, 399 00:19:57,840 --> 00:20:02,950 само даје тебе-- то вам даје приступ кључевима и вредностима. 400 00:20:02,950 --> 00:20:04,411 >> Дакле, штампање информације. 401 00:20:04,411 --> 00:20:07,410 Већ сам то урадио пар различита начина, можда сте приметили. 402 00:20:07,410 --> 00:20:11,080 Два функције прије свега сам види се штампа и ехо. 403 00:20:11,080 --> 00:20:14,380 А за скоро свим намерама и сврхе, они потпуно исти. 404 00:20:14,380 --> 00:20:17,130 Она су ту веома суптилан Разлика то није ни вредно 405 00:20:17,130 --> 00:20:21,130 узимајући у, али у суштини свуда можете користити принт вероватно можете користити 406 00:20:21,130 --> 00:20:22,370 ецхо такође. 407 00:20:22,370 --> 00:20:23,610 >> И то није само два. 408 00:20:23,610 --> 00:20:26,970 ПХП има много другачији начини да се одштампа ствари, 409 00:20:26,970 --> 00:20:30,520 а има и начина да се интегришу варијабли у средини низа. 410 00:20:30,520 --> 00:20:32,860 Дакле, сећам из Ц, зар не сећате шта функција 411 00:20:32,860 --> 00:20:37,580 можемо користити да замени променљиве у ствари желимо да одштампате? 412 00:20:37,580 --> 00:20:40,160 Вероватно користити функционишу доста. 413 00:20:40,160 --> 00:20:42,290 иф, зар не? 414 00:20:42,290 --> 00:20:45,290 Дакле, то је оно што смо имали раније у контекста нашег фореацх петље. 415 00:20:45,290 --> 00:20:48,000 Имали смо ових пет одвојеним саопштењима принт, 416 00:20:48,000 --> 00:20:50,330 јер је то био једини како ја стварно знао у том тренутку 417 00:20:50,330 --> 00:20:52,450 како да одштампате поруке. 418 00:20:52,450 --> 00:20:59,560 Нисам знао како да интегришу променљива $ прелив у моју ПХП кода. 419 00:20:59,560 --> 00:21:03,700 Па, ако само узео погодим, иф, заправо би радили. 420 00:21:03,700 --> 00:21:08,980 иф је функција која могу користити у ПХП, као што сам и могу га користити у Ц. 421 00:21:08,980 --> 00:21:11,880 >> И тако несто овако, иф, Опет, ми смо упознати са тим. 422 00:21:11,880 --> 00:21:16,420 Први% с замени са вредношћу од $ преливом. 423 00:21:16,420 --> 00:21:19,700 Други% с замени са вредношћу од $ цену. 424 00:21:19,700 --> 00:21:22,630 И тако сам интерпеллатинг, што је само фенси начин 425 00:21:22,630 --> 00:21:25,400 да каже да сам лепљење варијабли у тој локацији. 426 00:21:25,400 --> 00:21:31,000 Дакле, ја прикључивање $ преливом где црвени% с је и цена $, где плави% с 427 00:21:31,000 --> 00:21:36,060 је, а онда ћу добити поруку, "Читав сира пица кошта $ 8.99." 428 00:21:36,060 --> 00:21:37,750 >> Није једини начин да то урадим. 429 00:21:37,750 --> 00:21:39,760 Можда бих желите да користите ову методу. 430 00:21:39,760 --> 00:21:44,890 Ово је заправо оно што је најчешће назива променљива интерпелација. 431 00:21:44,890 --> 00:21:45,690 Ја могу користити ехо. 432 00:21:45,690 --> 00:21:47,737 Ја би отисак такође, као што ћемо видети. 433 00:21:47,737 --> 00:21:48,820 Али шта се дешава овде? 434 00:21:48,820 --> 00:21:51,520 >> Пре свега, морам да побегне знак долара. 435 00:21:51,520 --> 00:21:55,140 Јер, запамтите, када смо заправо били штампање цените на пице, 436 00:21:55,140 --> 00:21:59,370 Заправо сам их обликовање монетарне фигуре са знаком долара. 437 00:21:59,370 --> 00:22:05,635 Али ми користимо зараду такође да представљају имена променљивих у ПХП, 438 00:22:05,635 --> 00:22:08,010 а посебно када сам користећи овај метод коврџавом 439 00:22:08,010 --> 00:22:10,040 Браце променљива интерпелација метода, морам 440 00:22:10,040 --> 00:22:13,490 да побегне мој знак долара тако да не Мислим да говорим о променљивој. 441 00:22:13,490 --> 00:22:16,920 То је заправо догађа да, дословно штампање долара знак. 442 00:22:16,920 --> 00:22:19,530 >> Тако некако је аналогију у оно што видите на крају тамо. 443 00:22:19,530 --> 00:22:22,832 Није ли у ствари штампа обрнута коса црта Н, зар не? 444 00:22:22,832 --> 00:22:24,290 То исписује нову линију карактер. 445 00:22:24,290 --> 00:22:26,750 То је-- то неће Принт обрнута коса црта знак долара, 446 00:22:26,750 --> 00:22:30,130 то ће одштампати само знак за долар карактер. 447 00:22:30,130 --> 00:22:30,640 Иста идеја. 448 00:22:30,640 --> 00:22:32,760 Есцапе секвенце, што такве ствари се зову. 449 00:22:32,760 --> 00:22:37,080 >> Али приметите да не радим свака врста% с замена, 450 00:22:37,080 --> 00:22:40,050 Ја сам само буквално зачепљења у ових варијабли. 451 00:22:40,050 --> 00:22:45,110 И тако у ово-- шта ће се десити овде је да је вредност $ топпинг-- опет, 452 00:22:45,110 --> 00:22:48,390 Само складу са оним што смо били говоримо о тако фар-- сир би добили 453 00:22:48,390 --> 00:22:49,720 прикључен унутра. 454 00:22:49,720 --> 00:22:54,780 А $ цена ће бити шта год је вредност на пице, угластим заградама, сир, 455 00:22:54,780 --> 00:22:56,270 што је 8.99. 456 00:22:56,270 --> 00:23:01,860 И то би такође одштампати "Читав сира пица кошта $ 8.99." 457 00:23:01,860 --> 00:23:05,160 И као што сам рекао, ја би принт овде уместо ехо, 458 00:23:05,160 --> 00:23:08,040 и функционалност буде прилично исто. 459 00:23:08,040 --> 00:23:09,660 То би одштампати исту ствар. 460 00:23:09,660 --> 00:23:12,680 >> Постоји још један начин да се то уради, и то је још једна предност 461 00:23:12,680 --> 00:23:14,710 ПХП раду са жицама. 462 00:23:14,710 --> 00:23:17,130 Можемо да урадимо стринг конкатенацију. 463 00:23:17,130 --> 00:23:19,660 Могли би ово у Ц, такође, користите функцију која се зове стрцат, 464 00:23:19,660 --> 00:23:21,180 али опет, морали смо да позовите одвојене функције. 465 00:23:21,180 --> 00:23:22,640 То је цела ова збрка да уради. 466 00:23:22,640 --> 00:23:24,590 Морали смо да фунту-укључују стринг.х. 467 00:23:24,590 --> 00:23:25,780 То је била производња, зар не? 468 00:23:25,780 --> 00:23:30,070 Али сада сам могу да користе овај дот оператор да спојите жице заједно. 469 00:23:30,070 --> 00:23:34,910 >> Дакле, ја Надовезивањем "читав" и онда без обзира на вредност $ преливом је, 470 00:23:34,910 --> 00:23:38,860 , затим још стринг "трошкови пица $" 471 00:23:38,860 --> 00:23:42,340 и онда Надовезивањем год вредност $ Цена је, 472 00:23:42,340 --> 00:23:45,670 и онда на самом крају сам тацкинг на рок знак обрнуте косе н. 473 00:23:45,670 --> 00:23:47,926 И то би такође одштампати "у целини" - опет, 474 00:23:47,926 --> 00:23:50,550 ако говоримо о први елемент тог пице арраи-- 475 00:23:50,550 --> 00:23:54,710 "Читав сира пица кошта $ 8.99." 476 00:23:54,710 --> 00:24:01,260 Период, обрнута коса црта Н, опет, са на $ прелив и $ цена заменом 477 00:24:01,260 --> 00:24:06,580 за оно што смо наведено у нашем фореацх петља као кључни вредност пара мапирање. 478 00:24:06,580 --> 00:24:08,050 >> ПХП се рукује функције. 479 00:24:08,050 --> 00:24:11,250 Функције су некако саставни Ц, као што смо видели. 480 00:24:11,250 --> 00:24:14,870 Као варијабле, ми не треба да одредити врсту функције повратка, 481 00:24:14,870 --> 00:24:16,350 јер то није ни битно. 482 00:24:16,350 --> 00:24:18,660 А ми не наведете врсте података било које параметара, 483 00:24:18,660 --> 00:24:21,410 јер они не стварно материја, као што смо видели у ПХП. 484 00:24:21,410 --> 00:24:24,510 Свака функција је уведена са функцијом кључне речи. 485 00:24:24,510 --> 00:24:27,920 Тако смо указују на ПХП скрипте која чему говоримо о је функција. 486 00:24:27,920 --> 00:24:29,720 >> И не морамо да бавити главни уопште, 487 00:24:29,720 --> 00:24:33,690 јер преводиоца, ПХП преводилац, ради од врха до дна, 488 00:24:33,690 --> 00:24:34,190 без обзира. 489 00:24:34,190 --> 00:24:35,640 Ако се види можете направити функција позива, да ће 490 00:24:35,640 --> 00:24:37,850 да нађемо функцију позив, чак и ако је касније долази. 491 00:24:37,850 --> 00:24:40,360 Али то ће читати од врха до дна, тако да не треба да одредите, 492 00:24:40,360 --> 00:24:41,500 Овде је место где можете почети. 493 00:24:41,500 --> 00:24:46,700 Можете почети на линији 1 вашег ПХП и ради доле. 494 00:24:46,700 --> 00:24:49,690 >> Дакле, овде је како би се створили функција се зове хард_скуаре. 495 00:24:49,690 --> 00:24:54,100 То очигледно узима једну параметар, који зовем $ Кс. 496 00:24:54,100 --> 00:24:58,424 Ова функција је компликовано само да илуструју различите ствари. 497 00:24:58,424 --> 00:24:59,590 Још увек имамо повратне вредности. 498 00:24:59,590 --> 00:25:00,870 Ја сам користећи фор петљу овде. 499 00:25:00,870 --> 00:25:04,970 Али то је у основи само, шта је ово износи је само $ к пута $ х. 500 00:25:04,970 --> 00:25:10,520 Оно што ја заправо радим је само додавање х до 0 к пута или $ х на нулу $ к пута. 501 00:25:10,520 --> 00:25:15,850 Али то практично је потпуно исто као и множењем $ к $ к пута. 502 00:25:15,850 --> 00:25:18,700 Још увек могу вратити вредност, у овом случају $ резултата, 503 00:25:18,700 --> 00:25:22,060 и ја сам направио функцију у ПХП. 504 00:25:22,060 --> 00:25:24,160 >> Ево како би га користити у контексту. 505 00:25:24,160 --> 00:25:26,020 Дакле, можда сам у неке ПХП датотеке. 506 00:25:26,020 --> 00:25:29,240 Обратите пажњу на плаво тамо да Ја сам користила своје ПХП делимитерс, 507 00:25:29,240 --> 00:25:31,010 угаона заграда знак питања ПХП. 508 00:25:31,010 --> 00:25:35,180 Између то су сви ПХП да желим да пишем. 509 00:25:35,180 --> 00:25:37,840 Дакле, очигледно ћу добијам-- Идем да подстакне корисника 510 00:25:37,840 --> 00:25:41,550 да ми дају број, продавницу која променљива, продавница у том променљива $ к, 511 00:25:41,550 --> 00:25:43,320 све што ми је дао. 512 00:25:43,320 --> 00:25:48,590 Онда ћу ецхо хард_скуаре те вредности, 513 00:25:48,590 --> 00:25:50,370 и очигледно иде да се осуши на новој линији 514 00:25:50,370 --> 00:25:53,590 као и, а касније ћу дефинисати функцију хард_скуаре тако 515 00:25:53,590 --> 00:25:55,550 када сам чине позив на хард_скуаре, 516 00:25:55,550 --> 00:25:58,160 зна шта ја говорим. 517 00:25:58,160 --> 00:26:00,705 >> Сада, сам и могао да урадим овако нешто. 518 00:26:00,705 --> 00:26:02,050 Ово је нешто другачија. 519 00:26:02,050 --> 00:26:04,190 Скоро је потпуно исто као што смо раније видели, 520 00:26:04,190 --> 00:26:08,400 осим уместо да каже само $ х тамо као параметар хард_скуаре, 521 00:26:08,400 --> 00:26:11,730 Кажем $ к = 10. 522 00:26:11,730 --> 00:26:14,330 Дакле, ово је пример Одбрамбени програмирање, 523 00:26:14,330 --> 00:26:17,070 чува своје програме против злонамерних корисника. 524 00:26:17,070 --> 00:26:20,020 >> Ово је један начин да то урадите неку грешку провере да нисмо баш 525 00:26:20,020 --> 00:26:24,670 има као опција у Ц. нисмо могли одредите подразумевану вредност нечега. 526 00:26:24,670 --> 00:26:27,010 Увек смо морали да провери дали, на примјер, 527 00:26:27,010 --> 00:26:30,820 ако смо направили позив за ГетСтринг, било је најисправније ако одмах након што 528 00:26:30,820 --> 00:26:33,300 проверио да, проверили смо да ли је стринг 529 00:26:33,300 --> 00:26:35,504 да нам је дао корисник није једнако нулл, 530 00:26:35,504 --> 00:26:37,920 јер не желимо да почнете рад са нултом стринг. 531 00:26:37,920 --> 00:26:39,670 >> Ево, ово је један од начина да чувају против тога. 532 00:26:39,670 --> 00:26:43,480 Уколико корисник не дају нам нешто некако, шта ћемо да радимо? 533 00:26:43,480 --> 00:26:46,080 Па, само ћемо рећи шта год нису нам дају, 534 00:26:46,080 --> 00:26:47,705 ми ћемо само да прикључите 10. уместо тога. 535 00:26:47,705 --> 00:26:52,030 Дакле, ако нису нам вриједност, користите само 10 по дефаулту. И ево, 536 00:26:52,030 --> 00:26:53,940 приметити да правим позив на хард_скуаре, 537 00:26:53,940 --> 00:26:55,980 али нема брз кориснику, зар не? 538 00:26:55,980 --> 00:26:57,540 Само правим празан позив. 539 00:26:57,540 --> 00:27:00,860 >> Али моја функција хард_скуаре очекује параметар. 540 00:27:00,860 --> 00:27:02,222 Шта је ово да одштампате? 541 00:27:02,222 --> 00:27:03,680 То ће одштампати 100, зар не? 542 00:27:03,680 --> 00:27:05,720 Зато што корисник није дај ми ништа. 543 00:27:05,720 --> 00:27:08,970 И тако ја ћу претпоставити да 10-- 10 је дефаулт вредност. 544 00:27:08,970 --> 00:27:13,760 И то ће исписати од 100 на сопственој линији. 545 00:27:13,760 --> 00:27:16,390 >> ПХП фајлови не морају да бити само један фајл. 546 00:27:16,390 --> 00:27:19,480 Можете комбиновати заједно више фајлова, баш као што можете у Ц. начин 547 00:27:19,480 --> 00:27:24,330 смо урадили у Ц је типично да урадите #инцлуде да се хеадер филес извукао. 548 00:27:24,330 --> 00:27:26,180 Ми то не радимо у ПХП. 549 00:27:26,180 --> 00:27:29,110 Ми радимо нешто што се зове рекуире_онце. 550 00:27:29,110 --> 00:27:33,360 А ту је и цела ова ствар, шта је ово __дир__? 551 00:27:33,360 --> 00:27:36,510 То је само посебна променљива, или посебна константна, 552 00:27:36,510 --> 00:27:39,030 Заиста, да одређује шта Ваш тренутни директоријум је. 553 00:27:39,030 --> 00:27:41,320 И тако ће тражити у вашем тренутном директоријуму 554 00:27:41,320 --> 00:27:44,900 за фајл под називом цс50.пхп овде овом примеру, 555 00:27:44,900 --> 00:27:50,490 и да ће се држати тај фајл на врху ПХП програма, 556 00:27:50,490 --> 00:27:56,980 под претпоставком да сте ставили потребна Једном линије на врху ПХП датотеке. 557 00:27:56,980 --> 00:28:01,474 >> Дакле, ПХП је првенствено користи, али не искључиво користи, 558 00:28:01,474 --> 00:28:03,140 као језика за програмирање веб-басед. 559 00:28:03,140 --> 00:28:05,270 То је стварно како је дошло до тога да. 560 00:28:05,270 --> 00:28:06,980 Али, то је пуна језика, као што смо видели. 561 00:28:06,980 --> 00:28:10,105 Видели смо прилично све ствари да може да уради да су слични Ц, 562 00:28:10,105 --> 00:28:13,290 а то може урадити паклени много више од тога. 563 00:28:13,290 --> 00:28:16,950 >> Али пошто је то пуно језика, а ми може да уради командне линије програмирање у њему. 564 00:28:16,950 --> 00:28:18,630 Можемо покренути командне линије програма. 565 00:28:18,630 --> 00:28:22,580 Све што је потребно да покренете команду линија програм који је написан у ПХП 566 00:28:22,580 --> 00:28:24,260 је да имате ПХП преводиоца. 567 00:28:24,260 --> 00:28:27,460 Дакле, то је нека врста аналогно има компајлер на вашем систему 568 00:28:27,460 --> 00:28:31,100 Ако желите да састави свој Ц кода да га претвори у извршних датотека. 569 00:28:31,100 --> 00:28:33,810 Морате имати ПХП преводиоца која постоји на вашем систему 570 00:28:33,810 --> 00:28:37,330 тако да можете да тумачите ПХП фајлове. 571 00:28:37,330 --> 00:28:40,370 >> Под претпоставком да не, и обично ово преводилац се зове ПХП 572 00:28:40,370 --> 00:28:44,300 и то обично у пакету са највише преузимања или инсталације ПХП 573 00:28:44,300 --> 00:28:47,430 да можете добити на мрежи, а свакако назив ПХП преводиоца 574 00:28:47,430 --> 00:28:49,550 имамо у ЦС50, ИДЕ. 575 00:28:49,550 --> 00:28:51,819 Све ти је тип ПХП датотеке. 576 00:28:51,819 --> 00:28:53,610 И шта ваш програм је урадити је да је 577 00:28:53,610 --> 00:28:55,360 ће трајати до преводилац, то је 578 00:28:55,360 --> 00:28:58,040 ће игнорисати све што је није у питању марк-- између 579 00:28:58,040 --> 00:29:03,160 или, угаона заграда знак питања пхп ПХП граничници, и да га одштампате, 580 00:29:03,160 --> 00:29:07,660 и то ће тумачити и извршите код унутар ваших ПХП делимитерс. 581 00:29:07,660 --> 00:29:12,850 >> Дакле, хајде да скокнем до ЦС50 ИДЕ и имају поглед на неколико ПХП фајлова, 582 00:29:12,850 --> 00:29:19,850 ради пар ПХП фајлова, у командна линија интерфејс ЦС50 ИДЕ. 583 00:29:19,850 --> 00:29:22,100 Дакле, овде смо у ЦС50 ИДЕ, и ја сам узео слободу 584 00:29:22,100 --> 00:29:25,800 отварања фајл под називом хелло1.пхп. 585 00:29:25,800 --> 00:29:29,920 И очигледно, садржај овог Филе су само ПХП граничници тамо, 586 00:29:29,920 --> 00:29:32,220 и између, ехо ("Хелло, Ворлд"). 587 00:29:32,220 --> 00:29:34,710 Ово је прилично једноставна ПХП-програма. 588 00:29:34,710 --> 00:29:37,670 Ја ћу само да спустимо мом прозору терминала овде, 589 00:29:37,670 --> 00:29:44,320 и ја ћу да куцате пхп хелло1.пхп, притисните ентер. 590 00:29:44,320 --> 00:29:44,950 Здраво Свете. 591 00:29:44,950 --> 00:29:48,110 То је вероватно оно што смо били очекујући да уради, зар не? 592 00:29:48,110 --> 00:29:51,140 >> Идемо горе и да други погледате програма. 593 00:29:51,140 --> 00:29:52,924 хелло2.пхп. 594 00:29:52,924 --> 00:29:55,090 Прилично је иста ствар, не много дешава овде. 595 00:29:55,090 --> 00:29:57,190 Овај пут, међутим, ја ћу да подстакне корисник да ми њихова имена. 596 00:29:57,190 --> 00:29:59,290 Ја користим опет ту реадлине функција. 597 00:29:59,290 --> 00:30:01,340 $ име = реадлине. 598 00:30:01,340 --> 00:30:03,070 То је брз, "Како се зовеш?" 599 00:30:03,070 --> 00:30:04,880 >> Изгледа да сам штампа је у свом реду. 600 00:30:04,880 --> 00:30:07,220 А онда, тако да линија испод да ће бити брз 601 00:30:07,220 --> 00:30:08,750 где корисник може унети своје име. 602 00:30:08,750 --> 00:30:12,030 И онда сам помоћу мало променљива интерпелација овде на линији 3 603 00:30:12,030 --> 00:30:14,780 да одштампате "здраво" и без обзира врсте корисника. 604 00:30:14,780 --> 00:30:22,040 Дакле, ово је аналогно говорећи Поздрав, зарез,% с ако смо користили принтф у Ц. 605 00:30:22,040 --> 00:30:24,910 >> Дакле, идемо и тумаче овај програм. 606 00:30:24,910 --> 00:30:27,400 Дакле, опет ћу идите доле мом прозору терминала. 607 00:30:27,400 --> 00:30:29,070 ПХП хелло2.пхп. 608 00:30:29,070 --> 00:30:31,920 609 00:30:31,920 --> 00:30:33,820 Које је твоје име? 610 00:30:33,820 --> 00:30:35,490 Даг. 611 00:30:35,490 --> 00:30:36,526 Здраво, Даг. 612 00:30:36,526 --> 00:30:39,440 Имам и други фајл под називом хелло3.пхп. 613 00:30:39,440 --> 00:30:42,850 Ја ћу разбистрити екран са Цонтрол Л, 614 00:30:42,850 --> 00:30:46,210 и ја ћу извршити то. 615 00:30:46,210 --> 00:30:47,640 Које је твоје име? 616 00:30:47,640 --> 00:30:49,020 Даг. 617 00:30:49,020 --> 00:30:49,780 Здраво, Даг. 618 00:30:49,780 --> 00:30:56,540 Дакле, понашање је идентичан хелло2.пхп, али зашто је то хелло3.пхп? 619 00:30:56,540 --> 00:30:58,040 >> Па, овде је разлика. 620 00:30:58,040 --> 00:31:00,620 У том случају, обавештење да он лине 1 овде, 621 00:31:00,620 --> 00:31:04,270 Имам нешто што није између ПХП делимитерс. 622 00:31:04,270 --> 00:31:07,760 Ја сам само штампање оут-- или ја сам откуцао, "Како се зовеш?" 623 00:31:07,760 --> 00:31:12,060 Када је ПХП преводилац види ово, то нема појма како то тумаче као ПХП, 624 00:31:12,060 --> 00:31:15,060 па уместо да није, само ће то испљунути. 625 00:31:15,060 --> 00:31:19,010 >> Тако приметити на линији 3 сада, мој позив реадлине, више нема брз. 626 00:31:19,010 --> 00:31:21,750 Ја сам само заправо догађа када да-- ПХП преводилац види ово, 627 00:31:21,750 --> 00:31:23,400 да ће исписати "Које је твоје име?" 628 00:31:23,400 --> 00:31:25,941 Онда је види, Ох, ОК, хере'с-- све остало ће бити 629 00:31:25,941 --> 00:31:29,970 тумачи као ПХП, тако зато ово ради. 630 00:31:29,970 --> 00:31:34,990 Ја не морам да подстакне нужно корисник да-- унутар реадлине, 631 00:31:34,990 --> 00:31:37,490 Могу само да га напољу од ПХП делимитерс 632 00:31:37,490 --> 00:31:41,490 и дозволити преводиоца да га само одштампати за мене. 633 00:31:41,490 --> 00:31:45,364 >> Дакле, ви у ствари не само да имају један сет ПХП делимитерс 634 00:31:45,364 --> 00:31:46,030 у вашем програму. 635 00:31:46,030 --> 00:31:49,887 Можете заправо има неколико њих, отварање и њихово затварања јер потреби. 636 00:31:49,887 --> 00:31:51,720 Дакле, хајде да погледамо у неколико програма 637 00:31:51,720 --> 00:31:55,070 у ЦС50 ИДЕ где смо илуструју ову идеју постојања 638 00:31:55,070 --> 00:31:58,376 више комплета ограничену ПХП. 639 00:31:58,376 --> 00:32:02,010 >> У реду, па сам отворио фајл овде се зове адд1.пхп. 640 00:32:02,010 --> 00:32:03,390 А погледајте шта се овде дешава. 641 00:32:03,390 --> 00:32:08,077 Баш као и пре, имам један ПХП-сет делимитерс. 642 00:32:08,077 --> 00:32:10,660 Идем да одштампали порука, "Молим вас дајте ми број." 643 00:32:10,660 --> 00:32:13,394 Онда ћу да прочитам линију и ставите га у променљиве $ бр1. 644 00:32:13,394 --> 00:32:14,810 Онда ћу да одштампате поново. 645 00:32:14,810 --> 00:32:16,310 Дај ми други број. 646 00:32:16,310 --> 00:32:20,450 Прочитајте линију од корисника, продавнице све што унесе у $ бр2. 647 00:32:20,450 --> 00:32:23,980 Додајте их заједно и чувајте је довести у променљиву зове $ сума, 648 00:32:23,980 --> 00:32:26,180 а затим одштампати "Тхе Збир ових два броја 649 00:32:26,180 --> 00:32:29,254 је ", а затим интерпелисати тамо променљива $ сума. 650 00:32:29,254 --> 00:32:31,170 Дакле, хајде да ради ово преко преводиоца 651 00:32:31,170 --> 00:32:33,720 да потврди да је то оно што очекујемо. 652 00:32:33,720 --> 00:32:37,540 ПХП адд1.пхп. 653 00:32:37,540 --> 00:32:38,665 Молим вас дајте ми број, 3. 654 00:32:38,665 --> 00:32:40,410 Молим вас дајте ми други број, 4. 655 00:32:40,410 --> 00:32:43,370 Збир ова два броја је 7. 656 00:32:43,370 --> 00:32:45,030 То је 3, плус 4. 657 00:32:45,030 --> 00:32:45,530 ОК? 658 00:32:45,530 --> 00:32:47,770 Дакле, ништа страшно фенси тамо. 659 00:32:47,770 --> 00:32:51,080 >> А сада да отворимо адд2.пхп. 660 00:32:51,080 --> 00:32:54,460 Ево, имам пар ПХП делимитед сета тамо, зар не? 661 00:32:54,460 --> 00:32:59,107 Линес 1, 3-- линије 1 и 3 нема ПХП делимитерс. 662 00:32:59,107 --> 00:33:00,940 Дакле, када преводилац види их, то је само 663 00:33:00,940 --> 00:33:03,220 ће испљунути тачно оно што сам тамо откуца. 664 00:33:03,220 --> 00:33:05,011 Дакле, ту сам радиш све моје што је довело. 665 00:33:05,011 --> 00:33:11,220 На линијама 2 и 4, видимо да је веома познато $ пхп врста делимитерс, 666 00:33:11,220 --> 00:33:15,210 тако да те две линије су да извршава као ПХП. 667 00:33:15,210 --> 00:33:18,270 И онда он лине 5, имам ово чудна ствар овде, зар не? 668 00:33:18,270 --> 00:33:20,480 Овај угао заграда знак питања знак једнакости. 669 00:33:20,480 --> 00:33:22,660 Чак ћу увећање мало даље. 670 00:33:22,660 --> 00:33:29,270 Можете видети то је оно што сам Говорим о тамо, овај $? =. 671 00:33:29,270 --> 00:33:33,420 >> Испоставило се да је тако чест да разлог због којег смо отворили скуп ПХП 672 00:33:33,420 --> 00:33:36,055 граничници је да одштампате вредност. 673 00:33:36,055 --> 00:33:37,430 И то је све што ћемо да урадимо. 674 00:33:37,430 --> 00:33:39,220 Али чак и скраћеница за то. 675 00:33:39,220 --> 00:33:46,490 $? = Је ПХП скраћеница за рекавши нешто као $? пхп ецхо збир 676 00:33:46,490 --> 00:33:48,350 од бр1 и бр2. 677 00:33:48,350 --> 00:33:51,900 Дакле, ово је само још један скраћеница за то. 678 00:33:51,900 --> 00:33:55,550 >> Дакле, ако сам покренути овај програм, пхп адд2.пхп. 679 00:33:55,550 --> 00:33:57,530 Ја ћу зоом доле мало. 680 00:33:57,530 --> 00:33:59,000 Молим вас дајте ми број, 4. 681 00:33:59,000 --> 00:34:00,350 Молим вас дајте ми други број. 682 00:34:00,350 --> 00:34:04,650 А пошто ја не стварно стало типови података у ПХП-у, могу да кажем 4.8. 683 00:34:04,650 --> 00:34:07,160 Збир ова два броја је 8.8. 684 00:34:07,160 --> 00:34:10,179 Та функција се понаша прилично исто као што смо очекивали, 685 00:34:10,179 --> 00:34:10,989 као. 686 00:34:10,989 --> 00:34:13,114 И имам још један отворен овде се зове дице.пхп. 687 00:34:13,114 --> 00:34:25,625 688 00:34:25,625 --> 00:34:26,250 Покушајте поново. 689 00:34:26,250 --> 00:34:29,429 690 00:34:29,429 --> 00:34:33,280 Имам још једно овде назива дице1.пхп, који такође, види, 691 00:34:33,280 --> 00:34:37,440 има ту угао носача питање означите знак једнакости запис унутра, 692 00:34:37,440 --> 00:34:40,659 не приметим да је у овом случају сам позива функцију Ранд, који као ти 693 00:34:40,659 --> 00:34:42,790 може очекивати генерише случајни број. 694 00:34:42,790 --> 00:34:46,889 "Ваљани Ти си" и да ће израчунати неке случајни број, Мод 6 + 695 00:34:46,889 --> 00:34:47,389 1. 696 00:34:47,389 --> 00:34:49,989 Тако да ће ми дати број у опсегу од 1 до 6. 697 00:34:49,989 --> 00:34:53,040 >> Имајте на уму да ће ми дати Мод 6 број у опсегу од 0 до 5, 698 00:34:53,040 --> 00:34:56,630 али ако сам симулацију јамб ролне, што је оно што ја радим овде, 699 00:34:56,630 --> 00:35:00,040 Не желим те коцкице да иде од 0 до 5, желим коцкице које иду од 1 до 6. 700 00:35:00,040 --> 00:35:02,800 И то је начин да се ја у опсегу од 1 до 6. 701 00:35:02,800 --> 00:35:04,720 Радим ово два пута. 702 00:35:04,720 --> 00:35:08,630 Дакле, очигледно је да сам роллинг две коцкице у овом програму. 703 00:35:08,630 --> 00:35:15,210 >> Зато ћу разбистрити екран, и ја ћу пхп дице1.пхп. 704 00:35:15,210 --> 00:35:16,640 Ваљани сте 4 и 2. 705 00:35:16,640 --> 00:35:19,156 И ако покренете програм опет, ваљане је 5 и 5. 706 00:35:19,156 --> 00:35:21,780 Дакле, сваки пут када покренете програм, Идем различите бројеве, 707 00:35:21,780 --> 00:35:24,280 јер сваки пут радим Дакле, почиње готово. 708 00:35:24,280 --> 00:35:27,250 То ће генерисати нова сет случајних бројева за мене. 709 00:35:27,250 --> 00:35:29,790 >> Дакле, ако смо навикли покренуте програме из Ц, 710 00:35:29,790 --> 00:35:32,520 смо навикли да куцате ./ назив програма, зар не? 711 00:35:32,520 --> 00:35:35,090 Тако смо учинили све наших програма у Ц до сада. 712 00:35:35,090 --> 00:35:37,555 Ми то можемо урадити у ПХП као и додавањем нешто што се зове 713 00:35:37,555 --> 00:35:40,026 ствар на врх нашег ПХП датотеке. 714 00:35:40,026 --> 00:35:41,400 Знам да је то нека врста глупе речи. 715 00:35:41,400 --> 00:35:44,540 То је скраћеница за хеша праска. 716 00:35:44,540 --> 00:35:46,300 То је прва два лика тамо. 717 00:35:46,300 --> 00:35:50,030 Запамтите зовемо узвичник често прасак у компјутерској науци. 718 00:35:50,030 --> 00:35:51,690 Такође може бити оштру праска. 719 00:35:51,690 --> 00:35:53,273 Постоји неколико начина да а то тумаче. 720 00:35:53,273 --> 00:35:57,320 Али то је у основи је посебна врста командовања да ПХП преводилац 721 00:35:57,320 --> 00:36:00,160 схвата као, ох, желим да изврши овај програм, 722 00:36:00,160 --> 00:36:05,250 што је очигледно / корисник / бин / пхп који је заправо где ПХП преводилац 723 00:36:05,250 --> 00:36:08,590 посебно живи на нашем систему. 724 00:36:08,590 --> 00:36:12,530 Тако је-- шта се овде дешава је преводилац разуме, о, 725 00:36:12,530 --> 00:36:17,270 Ја сам очигледно требало да користе У овом програму да покренете ову слику. 726 00:36:17,270 --> 00:36:20,010 И тако вам омогућава прескочити корак 727 00:36:20,010 --> 00:36:22,979 да имају да кажу пхп сометхинг.пхп. 728 00:36:22,979 --> 00:36:25,020 Постоји још једна цака овде, а то је да ако 729 00:36:25,020 --> 00:36:27,320 Желим наше програме на раде као што је очекивано, ми 730 00:36:27,320 --> 00:36:30,220 треба да урадите нешто што се зове фајл дозвола промена. 731 00:36:30,220 --> 00:36:33,380 И ми ћемо иде-- и мало причамо нешто више о филе пермиссион промене 732 00:36:33,380 --> 00:36:37,550 у нашој видео на МВЦ, али је довољна да кажу да је то оно што треба да урадите 733 00:36:37,550 --> 00:36:42,760 како би ваш .пхп фајлова извршна. 734 00:36:42,760 --> 00:36:49,330 Дакле, хајде да погледамо ово као наш крајњи пример тамо у ЦС50 ИДЕ. 735 00:36:49,330 --> 00:36:53,910 >> Дакле, овде у ИДЕ имам два фајла у ово ПХП-директоријум који се појављују да не буде 736 00:36:53,910 --> 00:36:55,310 зове .пхп. 737 00:36:55,310 --> 00:36:58,170 Имам функција се зове адд-- Имам фајл под именом адд3 738 00:36:58,170 --> 00:37:00,650 и фајл под именом дице2. 739 00:37:00,650 --> 00:37:03,680 Дакле, хајде да узмемо брзо изглед и отвори адд3. 740 00:37:03,680 --> 00:37:08,300 И као што видите, на почетку од мом досијеу имам ову ствар, зар не? 741 00:37:08,300 --> 00:37:11,420 Ово хасх знак узвика. 742 00:37:11,420 --> 00:37:15,115 Сада, такође ћете можда Приметићете да из неког разлога, 743 00:37:15,115 --> 00:37:16,990 Немам никакву синтаксу истицање више, 744 00:37:16,990 --> 00:37:20,198 и то је оно што сам алудирао раније, који је био да ако не име мој досије 745 00:37:20,198 --> 00:37:23,040 .пхп, немам корист синтаксе истицање више. 746 00:37:23,040 --> 00:37:26,220 Овај фајл је управо звао адд3. 747 00:37:26,220 --> 00:37:30,960 Тако да можете покренути касније са ./ адд3 а не ./ адд3.пхп. 748 00:37:30,960 --> 00:37:33,680 >> Дакле, то је још увек разлога-- добро, то је још увек важи ПХП 749 00:37:33,680 --> 00:37:37,000 али то није синтакса је истакао, јер Овај фајл се не зове сометхинг.пхп. 750 00:37:37,000 --> 00:37:41,580 То је једина права разлика Овде, плус ствар. 751 00:37:41,580 --> 00:37:45,170 Дакле, хајде да видимо шта се дешава када Трудим се и покрените програм. 752 00:37:45,170 --> 00:37:50,780 ./ Адд3, баш као и ја бих са Ц. Басх. 753 00:37:50,780 --> 00:37:53,190 ./ Адд3 дозвола ускраћена. 754 00:37:53,190 --> 00:37:55,390 То је оно што ћеш да видим да ли заборавити 755 00:37:55,390 --> 00:37:59,280 да користите команду цхмод да бисте променили дозволе датотеке. 756 00:37:59,280 --> 00:38:03,845 >> Како се испоставило, редовно ПХП датотеке не могу само бити погубљени. 757 00:38:03,845 --> 00:38:06,970 Они се могу тумачити, али смо радим нешто другачије овде. 758 00:38:06,970 --> 00:38:07,761 Ми смо га извршења. 759 00:38:07,761 --> 00:38:12,970 И тако морам да додам дозволу извршења, цхмод а + к у адд3. 760 00:38:12,970 --> 00:38:15,680 Онда могу да кажем ./ адд3. 761 00:38:15,680 --> 00:38:16,860 Молим вас дајте ми број. 762 00:38:16,860 --> 00:38:18,060 5, 6. 763 00:38:18,060 --> 00:38:20,490 Збир ова два броја је 11. 764 00:38:20,490 --> 00:38:26,530 >> Слично томе, ја сам већ цхмодед дице2, тако да сам само да укуцате ./ дице2, 765 00:38:26,530 --> 00:38:31,260 ти ваљани а 1 и 1, ти Докотрља 5 и 4, и тако даље. 766 00:38:31,260 --> 00:38:33,680 >> Дакле, то је прилично Идеја о ПХП синтаксе, зар не? 767 00:38:33,680 --> 00:38:35,221 Има много да се кроз, знам. 768 00:38:35,221 --> 00:38:39,160 Али надам се да си сада видио да ПХП није толико разликује од Ц 769 00:38:39,160 --> 00:38:43,670 и заиста нам даје могућност да се ствари на зарез или два. 770 00:38:43,670 --> 00:38:48,230 Ми заправо не морате да бринете превише о-- не знамо стварно 771 00:38:48,230 --> 00:38:51,605 морате да бринете превише о детаљи су на ниском нивоу ми 772 00:38:51,605 --> 00:38:52,980 морао да брине о с Ц, зар не? 773 00:38:52,980 --> 00:38:56,170 Можемо се фокусирати на виши Ниво ствари које тект 774 00:38:56,170 --> 00:39:01,090 омогућава нам да радимо и да се за подразумева да ће то радити за нас. 775 00:39:01,090 --> 00:39:04,350 Тако да нам даје могућност сада, преласка са Ц на ПХП, 776 00:39:04,350 --> 00:39:08,280 да програме који су много више сложен и можда много више робустан. 777 00:39:08,280 --> 00:39:13,070 >> Надам се да забавите се рад са ПХП, а ја сам Доуг Лојд. 778 00:39:13,070 --> 00:39:15,050 Ово је ЦС50. 779 00:39:15,050 --> 00:39:17,637