1 00:00:00,000 --> 00:00:05,720 2 00:00:05,720 --> 00:00:07,620 >> DOUG LLOYD: Do en nia vídeo sur PHP sintakso, 3 00:00:07,620 --> 00:00:10,480 ni parolis multe pri kiel PHP povas esti uzita ĉe la komandlinio 4 00:00:10,480 --> 00:00:13,620 kuri programojn en maniero kiu ni povos egale konanta de C. 5 00:00:13,620 --> 00:00:15,370 Sed, kiel mi ankaŭ menciis en tiu video, PHP 6 00:00:15,370 --> 00:00:19,572 estis disvolvita komence por efektivigu ttt programado, retejoj. 7 00:00:19,572 --> 00:00:21,780 Kaj tial en ĉi tiu video ni estas tuj parolos pri ni kiel 8 00:00:21,780 --> 00:00:23,890 uzi PHP en la ttt disvolviĝo kuntekston. 9 00:00:23,890 --> 00:00:26,360 >> Ni scias, jam, de niaj filmetoj en HTML, 10 00:00:26,360 --> 00:00:29,820 ke retejoj estas konstruita el aro de HTML etikedoj 11 00:00:29,820 --> 00:00:32,850 ke semantike difini la strukturo de retpaĝo. 12 00:00:32,850 --> 00:00:35,910 Sed retejoj kiuj estas konstruita per pura HTML 13 00:00:35,910 --> 00:00:39,510 suferas tre, tre seriozan limigon. 14 00:00:39,510 --> 00:00:42,690 >> Kaj por ilustri ĉi tiun limigon, ni konsideru la sekvan. 15 00:00:42,690 --> 00:00:45,665 Do nun mi volas konstrui retpaĝo ke, kiam ajn la uzanto vizitas ŝin, 16 00:00:45,665 --> 00:00:49,760 ĝi donas al mi la nunan tempo en Kembriĝo, Mass., 17 00:00:49,760 --> 00:00:52,620 montri ĝin al la lasta minuto. 18 00:00:52,620 --> 00:00:57,910 Se mi estis faranta ĉi tiun rajton nun, Mi povus diri ion kiel tion. 19 00:00:57,910 --> 00:01:01,330 Nuna tempo en Cambridge-- tial mi havas HTML etikedoj, kapo etikedoj, titolo etikedoj, 20 00:01:01,330 --> 00:01:04,610 korpo tags-- la nuna tempo en Cambridge estas 14:08, 21 00:01:04,610 --> 00:01:06,690 presi el milita tempo. 22 00:01:06,690 --> 00:01:11,390 >> Kio okazas se ĝi estas nun 2:09 Pm, 14:09? 23 00:01:11,390 --> 00:01:16,470 Nu ĝis nun, kun HTML, mi havas iri kaj ŝanĝu ĝin al 14:09. 24 00:01:16,470 --> 00:01:19,390 Kaj tiam unu minuton poste, Mi devos ŝanĝi ĝin denove. 25 00:01:19,390 --> 00:01:22,132 Kaj tiam unu minuton poste, Mi devos ŝanĝi ĝin denove. 26 00:01:22,132 --> 00:01:24,590 Kaj kiel vi povas imagi, ke estas probable la plej malbonan laboron iam. 27 00:01:24,590 --> 00:01:29,420 Vi estas la retmajstro por retpaĝon, kaj ĉiu minuto, 24 horoj tage, 28 00:01:29,420 --> 00:01:35,970 Vi bezonas ĝisdatigi la nuna tempo de permane malfermante time.html kaj ŝanĝante 29 00:01:35,970 --> 00:01:41,750 Nur ke fragmento de kodo diri la nuna tempo en horoj kaj minutoj. 30 00:01:41,750 --> 00:01:45,850 Tio probable ne estas tre bona uzo de niaj resursoj, 31 00:01:45,850 --> 00:01:48,880 ambaŭ homa kaj komputa. 32 00:01:48,880 --> 00:01:51,297 >> Retejoj kiuj estas ĉiuj HTML estas tute statikaj. 33 00:01:51,297 --> 00:01:53,630 La sola maniero vi povas ĝisdatigi enhavo, kiel ni ĵus vidis, 34 00:01:53,630 --> 00:01:56,339 estas permane malfermi tiujn fonto dosierojn, redakti ilin kaj konservi ilin. 35 00:01:56,339 --> 00:01:58,088 Kaj tiam kiam la uzanto refreŝigas la paĝo, 36 00:01:58,088 --> 00:02:01,080 aŭ vizitas la paĝon por la unua tempo, ili ricevos la lasta enhavo. 37 00:02:01,080 --> 00:02:03,970 Sed nur ĉar ni permane redaktis ĝin. 38 00:02:03,970 --> 00:02:07,980 >> Se ni komencas miksi iuj PHP tien, nia kodo povas akiri multe pli fleksebla. 39 00:02:07,980 --> 00:02:11,940 Kaj ni povas havi vojon por nia paĝoj esti dinamika, aŭ ĝisdatigi sin, 40 00:02:11,940 --> 00:02:15,360 sen postuli nia kompatinda retestro en la antaŭa ekzemplo 41 00:02:15,360 --> 00:02:16,662 esti permane ĝisdatiganta aferojn. 42 00:02:16,662 --> 00:02:17,870 Ili povas fari ĝin aŭtomate. 43 00:02:17,870 --> 00:02:19,130 Ni ne devas interveni. 44 00:02:19,130 --> 00:02:20,410 Ni povas ricevi iun dormon. 45 00:02:20,410 --> 00:02:24,850 Kiu estas probable bona afero se vi faras multajn ttt programado. 46 00:02:24,850 --> 00:02:28,360 >> Do en CS50 IDE, ni kuras retservilo nomata Apache. 47 00:02:28,360 --> 00:02:35,250 Ĝi estas tre ofte uzata, malfermita retservilo sistemo. 48 00:02:35,250 --> 00:02:37,320 Tiu sistemo havas la kapablo interpreti 49 00:02:37,320 --> 00:02:41,260 PHP, kiu tuj estos utila se vi volas fari ajnan PHP programado. 50 00:02:41,260 --> 00:02:45,230 >> Kaj en CS50 IDE, ni havas komandon fari ĉi tre facila fari, 51 00:02:45,230 --> 00:02:47,280 apache50 komenci. 52 00:02:47,280 --> 00:02:49,445 Kaj tiam tiu oblikvo irejo, oblikvo por, oblikvo 53 00:02:49,445 --> 00:02:53,350 dir, tio estas nur vere komuna maniero indikante kion vi specifita tie 54 00:02:53,350 --> 00:02:56,510 estas vojo al aparta dosierujo kiu vi 55 00:02:56,510 --> 00:03:00,800 volas esti la radiko ejo, aŭ la radikon paĝo, 56 00:03:00,800 --> 00:03:05,430 aŭ la dosierujo de kiu via retservilo komencos ekzameni dosierojn kaj servi 57 00:03:05,430 --> 00:03:07,850 ilin al klientoj kiuj petas ilin. 58 00:03:07,850 --> 00:03:12,110 Do ni Pufo al CS50 IDE, nur por montri vin, vere rapida, kiel tio funkcias. 59 00:03:12,110 --> 00:03:30,930 60 00:03:30,930 --> 00:03:36,240 >> Do tie en CS50 IDE, mi estas en dosierujo nomita Semajno Zero Nine. 61 00:03:36,240 --> 00:03:38,890 Kaj mi havas two-- mi havas ekzekutis LS komando simple 62 00:03:38,890 --> 00:03:41,910 supre por montri al vi, ke mi havas du dosierujojn en tie, PHP, 63 00:03:41,910 --> 00:03:46,410 kiu estas la aro de dosieroj kiujn mi uzis en la PHP sintakso vídeo, kaj tiam PHP-retejo, 64 00:03:46,410 --> 00:03:49,380 kiu estas la aro de dosieroj kiujn mi ŝatus uzi en ĉi tiu video. 65 00:03:49,380 --> 00:03:53,480 >> Kaj mi ŝatus komenci retservilo ekzemple 66 00:03:53,480 --> 00:03:59,089 kun la enhavo de la PHP-retejo dosierujo kiel la dosieroj estas estanta servita supren. 67 00:03:59,089 --> 00:04:00,130 Do kion mi faru? 68 00:04:00,130 --> 00:04:05,710 Mi tuj tajpi apache50 spaco komenci, spaco PHP, haltostreko TTT. 69 00:04:05,710 --> 00:04:08,100 Jen la vojo al dosierujo de kie mi nuntempe estas. 70 00:04:08,100 --> 00:04:09,127 Tiam mi batis Enter. 71 00:04:09,127 --> 00:04:10,960 Ĝi tuj fari iomete da aĵoj ĉi tie. 72 00:04:10,960 --> 00:04:14,030 Kaj tiam tuj diri, Apache komenciĝis sukcese. 73 00:04:14,030 --> 00:04:20,689 Via retejo estas nun disponebla at-- kaj tiam ekzistas la URL por la ejo. 74 00:04:20,689 --> 00:04:21,730 Do kion mi faru? 75 00:04:21,730 --> 00:04:26,234 Mi tuj rapide kopiu ĉi. 76 00:04:26,234 --> 00:04:28,900 Kaj mi tuj malfermos up-- kaj Mi malzomi iomete here-- 77 00:04:28,900 --> 00:04:31,570 Mi tuj malfermu nova langeto en Chrome. 78 00:04:31,570 --> 00:04:34,320 Kaj mi tuj vizitos tiu URL. 79 00:04:34,320 --> 00:04:35,299 >> Mi tuj batis Enter. 80 00:04:35,299 --> 00:04:36,090 Ĝi tuj ŝarĝas. 81 00:04:36,090 --> 00:04:37,510 Kaj mi malzomi denove. 82 00:04:37,510 --> 00:04:41,350 Kaj ni povas vidi tie estas la enhavo de mia PHP retejo dosierujo. 83 00:04:41,350 --> 00:04:45,290 >> Do nun kio esence okazanta jen, mia petskribo de CS50 IDE 84 00:04:45,290 --> 00:04:49,620 servas tiujn dosierojn iu ajn kiu petas ilin. 85 00:04:49,620 --> 00:04:51,620 Super la apartajxo de ĉi video, ni ordigi de 86 00:04:51,620 --> 00:04:55,400 rigardu faskon de tiuj malsamajn dosierojn en kunteksto. 87 00:04:55,400 --> 00:04:57,614 >> Por testi ke via Apache servilo funkcias, 88 00:04:57,614 --> 00:04:59,780 kiu estas ĝenerale iranta esti la kazo en CS50 IDE, 89 00:04:59,780 --> 00:05:02,696 sed se vi faros tion pli ĝenerale, kaj vi komenci konstrui vian propran ttt 90 00:05:02,696 --> 00:05:04,990 serviloj, ekzistas vere komuna speco de analoga al, 91 00:05:04,990 --> 00:05:08,500 "saluton mondo", te kutime uzita por PHP ttt disvolviĝo. 92 00:05:08,500 --> 00:05:12,855 Kio estas havi dosieron konsistanta el nur tiun code-- 93 00:05:12,855 --> 00:05:18,247 PHP delimitador inkrustita per PHP info, krampoj, punktokomo intere. 94 00:05:18,247 --> 00:05:20,580 Kiu estas esence speciala PHP funkcio kiu informas vin 95 00:05:20,580 --> 00:05:23,970 kion versio de PHP vi kuras. 96 00:05:23,970 --> 00:05:26,850 >> Do en CS50 IDE, mi havas ke dosiero disponebla nur 97 00:05:26,850 --> 00:05:28,680 montri vin kion ĉi aspektus. 98 00:05:28,680 --> 00:05:32,860 Do mi rigardis mian indekso de mia PHP ekz. 99 00:05:32,860 --> 00:05:35,870 Mia Apache Ekzemple kuras la enhavo de PHP-retejo. 100 00:05:35,870 --> 00:05:39,290 Kaj mi havas dosieron tie nomata info.php. 101 00:05:39,290 --> 00:05:41,164 >> Mi tuj klaku ĝin, malzomi. 102 00:05:41,164 --> 00:05:43,080 Jen kion vi tuj vidi, preskaux. 103 00:05:43,080 --> 00:05:45,729 Tiu estas nur diras min ke miaj Apache servilo funkcias. 104 00:05:45,729 --> 00:05:48,270 Kaj tiu estas, ŝajne, la versio de PHP ke Mi kuras. 105 00:05:48,270 --> 00:05:51,590 Mia estas analoga al "saluton mondo." 106 00:05:51,590 --> 00:05:53,070 >> Do mi scias aferojn estas operacional. 107 00:05:53,070 --> 00:05:54,150 Do ni estas bone iri. 108 00:05:54,150 --> 00:05:55,730 Ni povas procedi de ĉi tie. 109 00:05:55,730 --> 00:05:57,790 >> Do ni reviziti ke tempo ekzemplo ni estis 110 00:05:57,790 --> 00:06:01,950 parolas kun nia malriĉa retestro kiu devis ĝisdatigi la paĝon senĉese. 111 00:06:01,950 --> 00:06:05,020 Tio povas esti solvon por kiom Mi volus apliki aferoj 112 00:06:05,020 --> 00:06:08,080 por ke la retestro ne devi teni ĝisdatigi la tempo. 113 00:06:08,080 --> 00:06:10,270 Ĝi farus nur ia okazos aŭtomate. 114 00:06:10,270 --> 00:06:13,710 >> La malsupre, la HTML, estas bela similaj, kun unu escepto. 115 00:06:13,710 --> 00:06:16,720 Sed ĉi tie mi mem havigis iuj PHP ĉe la supro. 116 00:06:16,720 --> 00:06:19,940 Mi, ŝajne, nomita tiu funkcio date_default_timezone_set. 117 00:06:19,940 --> 00:06:22,106 >> Kaj ni ne parolas pri ĉiuj tiujn funkciojn en CS50, 118 00:06:22,106 --> 00:06:24,670 ĉar PHP havas probable dekoj da miloj. 119 00:06:24,670 --> 00:06:27,540 Tio povus esti iom de troigo, sed eble ne. 120 00:06:27,540 --> 00:06:29,490 Oni alvenis multajn funkciojn enkonstruita. 121 00:06:29,490 --> 00:06:33,290 Kaj tiel tio estas funkcio ŝajne fiksas mian horzonon kiel US / Eastern, 122 00:06:33,290 --> 00:06:36,320 kiu estas la horzono ke mi estas aktuale en farante tiun video. 123 00:06:36,320 --> 00:06:38,430 >> Tiam mi faras alvokon al funkcio vokita, dato. 124 00:06:38,430 --> 00:06:43,850 Kaj, ŝajne, mi stokante la LIA de iu nomita, tempo. 125 00:06:43,850 --> 00:06:45,320 Do kio okazas ĉi tie? 126 00:06:45,320 --> 00:06:48,040 >> Nu, resume kio estas okazanta estas, mi faras alvokon 127 00:06:48,040 --> 00:06:51,650 al iu servilo kiu tuj diru al mi kio tempo aktuale estas. 128 00:06:51,650 --> 00:06:56,150 Kaj mi konvertado al formato de horoj, minutoj, sekundoj. 129 00:06:56,150 --> 00:07:00,540 Kaj la kialo estas ĉefurbo H estas tiu tuj donu al mi 24 hora tempo, ne 12 130 00:07:00,540 --> 00:07:02,362 hora tempo, kiu estus minuskla h. 131 00:07:02,362 --> 00:07:04,570 Kaj mi simple stoki ke en variablo vokis, tempo. 132 00:07:04,570 --> 00:07:07,028 Do tiu dua linio de PHP ekzistas, la alvoko al la funkcio, 133 00:07:07,028 --> 00:07:09,037 dato, estas nur nun iuj kordoj, kiuj estas 134 00:07:09,037 --> 00:07:12,120 tuj al mi la dato, kaj la tempo, kaj faskon de aliaj informoj. 135 00:07:12,120 --> 00:07:16,480 Kaj la unua argumento tie, ke LIA, Estas ĝuste ĉerpi la grava parto 136 00:07:16,480 --> 00:07:20,614 ke mi zorgas pri ĉi tiu ekzemplo, kiu estas la horo, minuto kaj sekundo. 137 00:07:20,614 --> 00:07:22,030 Do jen la tuta tiu okazas. 138 00:07:22,030 --> 00:07:23,562 Do mi stoki ke en variablo $ tempon. 139 00:07:23,562 --> 00:07:25,270 Kaj poste malsupren al la tre fundo tie, mi 140 00:07:25,270 --> 00:07:28,980 havas tiun stenografio por presi el la nuna tempo. 141 00:07:28,980 --> 00:07:32,050 Do mi simple tuj presi kion la nuna tempo estas. 142 00:07:32,050 --> 00:07:37,220 >> Do ni rigardu tiun en CS50 IDE kaj vidi kiel ni nun 143 00:07:37,220 --> 00:07:40,002 savanta ke retestro multajn problemojn. 144 00:07:40,002 --> 00:07:42,570 Bone, do jen mi denove reen ĉe la radika dosierujo 145 00:07:42,570 --> 00:07:45,040 de miaj Apache ekz. 146 00:07:45,040 --> 00:07:51,585 Kaj mi havas dosieron tie nomata time.php. 147 00:07:51,585 --> 00:07:53,559 Mi simple tuj klaku sur tion. 148 00:07:53,559 --> 00:07:55,850 Kaj mi rulumu supren, ĉar ni zomis en bela malproksima. 149 00:07:55,850 --> 00:07:57,257 La nuna tempo estas 14:20:34. 150 00:07:57,257 --> 00:07:59,090 Do mi faras gxin horoj, minutoj kaj sekundoj. 151 00:07:59,090 --> 00:08:01,910 Kaj mi povas refreŝigi la paĝo kaj akiri novan tempon. 152 00:08:01,910 --> 00:08:02,420 --41. 153 00:08:02,420 --> 00:08:07,240 Mi tuj refreŝigi la paĝon kaj akiri novan tempon, 44, 46, 47. 154 00:08:07,240 --> 00:08:10,490 >> Do, mi estas klare ne ŝanĝi ion mem. 155 00:08:10,490 --> 00:08:11,720 Mi tie refreŝiga la paĝo. 156 00:08:11,720 --> 00:08:13,711 Do mi ne povas esti reen tie redaktante ĝin. 157 00:08:13,711 --> 00:08:15,710 Kaj mi promesas al vi, mi ne faras havas ajnan aliancanoj 158 00:08:15,710 --> 00:08:18,230 kiu redaktas la dosiero por mi sur la flankon. 159 00:08:18,230 --> 00:08:21,260 >> Mi nur uzas ke PHP funkcio, tempo, por generi la tempo por mi 160 00:08:21,260 --> 00:08:22,340 aŭtomate. 161 00:08:22,340 --> 00:08:24,800 Tiel ke eĉ se mi estas dormanta, kaj mia retservilo kuras, 162 00:08:24,800 --> 00:08:28,884 la uzanto kiu vizitas la paĝon estas ankoraŭ tuj ricevas ekzakte la nuna tempo. 163 00:08:28,884 --> 00:08:29,800 Tiel ke estas sufiĉe bonaj. 164 00:08:29,800 --> 00:08:33,609 Mi jam faris mian retejon pli dinamika kun ne tro multe PHP kodo. 165 00:08:33,609 --> 00:08:36,650 Estis nur du linioj de kodo kaj tiam iomete da print komunikaĵo. 166 00:08:36,650 --> 00:08:38,441 Kaj jam mi havas multe pli dinamika ejo 167 00:08:38,441 --> 00:08:42,750 ol tiu unua ekzemplo ni vidis ĉe la komenco de la video. 168 00:08:42,750 --> 00:08:46,660 >> Do, memoras de la video sur PHP sintakso ke kiam la PHP interpretisto kuras 169 00:08:46,660 --> 00:08:50,000 nia programo, ĝi ignoras ĉiu tio ne ene de PHP delimitadores, 170 00:08:50,000 --> 00:08:51,500 kracxi ĝin. 171 00:08:51,500 --> 00:08:54,410 En tiu ekzemplo, kion la afero ke oni kracxis el estis HTML. 172 00:08:54,410 --> 00:08:58,080 Kaj tio signifas mi povas nun intersperse HTML kaj PHP kune. 173 00:08:58,080 --> 00:09:01,920 Ĉar la interpretisto simple ignori la HTML kaj laŭvorte eligo ĝin. 174 00:09:01,920 --> 00:09:04,140 Kio estas bona, ĉu ne? 175 00:09:04,140 --> 00:09:06,100 >> Ĉar supozeble, fine de la tago, 176 00:09:06,100 --> 00:09:08,360 Mi ŝatus mian retejon al esti konstruitaj de HTML. 177 00:09:08,360 --> 00:09:12,880 Tiel ke ajna retumilo povas interpreti ĝi, aŭ kompreni la HTML de la paĝo 178 00:09:12,880 --> 00:09:17,270 kaj redonu ĝin kiel ion, kion ni povas fakte kompreni kiel homoj. 179 00:09:17,270 --> 00:09:19,430 Kaj mi povas nur uzi PHP por la partoj de mia retejo 180 00:09:19,430 --> 00:09:23,390 la postuli dinamismo, kiuj postulas min havi aĵojn kiuj ĝisdatigos senĉese. 181 00:09:23,390 --> 00:09:26,630 La statikaj informoj povas resti la sama. 182 00:09:26,630 --> 00:09:27,540 >> Bone, do tio estas bone. 183 00:09:27,540 --> 00:09:28,540 Sed kial mi faru tion? 184 00:09:28,540 --> 00:09:30,400 Kial mi miksi HTML kaj PHP? 185 00:09:30,400 --> 00:09:33,850 Mi povis nur presi ĉiujn HTML, uzanta la PHP print funkcio. 186 00:09:33,850 --> 00:09:35,870 Kial mi ne faras tion? 187 00:09:35,870 --> 00:09:37,100 Pensu pri ĝi dum sekundo. 188 00:09:37,100 --> 00:09:41,220 >> Ho, kiam mi povis nur presi fjordon mi povus havi liniojn de PHP ke nur diru, 189 00:09:41,220 --> 00:09:43,841 print HTML tag, presi kapo. 190 00:09:43,841 --> 00:09:44,840 Kial mi ne faras tion? 191 00:09:44,840 --> 00:09:48,230 Kial mi miksante la PHP kaj HTML? 192 00:09:48,230 --> 00:09:50,080 >> Nu, se vi opinias pri ĝi dum sekundo. 193 00:09:50,080 --> 00:09:52,824 PHP, la interpretisto havas interpreti kion ŝi vidas. 194 00:09:52,824 --> 00:09:54,990 Kaj tiel ĝi tuj devos ekzekuti linion de kodo. 195 00:09:54,990 --> 00:09:56,450 Elprinti HTML. 196 00:09:56,450 --> 00:09:57,700 Elprinti malfermita kapo etikedo. 197 00:09:57,700 --> 00:09:58,969 Elprinti malfermita titolo etikedo. 198 00:09:58,969 --> 00:10:00,760 Ĝi tuj devos ekzekuti kaj interpreti 199 00:10:00,760 --> 00:10:02,671 ke ĉiu unuopa paŝo de la vojo. 200 00:10:02,671 --> 00:10:04,670 Kial ne simple lasu la interpretisto simple forgliti super 201 00:10:04,670 --> 00:10:06,878 aferoj ne kompreni kaj faras aŭtomate? 202 00:10:06,878 --> 00:10:11,365 Ĝi tuj savi min multa tempo miksi miajn HTML kaj PHP miaj kune. 203 00:10:11,365 --> 00:10:16,220 >> Kaj do jen kial ni ne nur havi malfermitaj PHP delimitador 204 00:10:16,220 --> 00:10:19,450 kaj tiam simple printi la tutan enhavo de nia paĝo kiel unu giganta PHP 205 00:10:19,450 --> 00:10:24,330 vokas al la funkcio, Print, kaj tiam proksime PHP delimitador kaj ni faris. 206 00:10:24,330 --> 00:10:27,620 Tial do ni miksas ilin kune. 207 00:10:27,620 --> 00:10:32,345 >> Ĝis nun, ni ne vidis tro diferenco de ĝeneralaj PHP sintakso. 208 00:10:32,345 --> 00:10:33,720 Ĝi estas estita sufiĉe simpla. 209 00:10:33,720 --> 00:10:35,553 Ni jam vidis la demandosigno, egalaj. 210 00:10:35,553 --> 00:10:39,012 Ni vidis paron de novaj funkcio vokoj, sed nenio vere imago okazas. 211 00:10:39,012 --> 00:10:40,720 Ni eble fari aferojn iom amatoro. 212 00:10:40,720 --> 00:10:44,360 Kio se ni volas pasi informon inter malsamaj PHP dosierojn, 213 00:10:44,360 --> 00:10:47,280 tiel ke eble la uzanto povas prezenti informon al mi. 214 00:10:47,280 --> 00:10:50,230 Kaj tiam mi povis fari ion per ĝi en alia paĝo. 215 00:10:50,230 --> 00:10:52,990 >> Do PHP havas subtenon por iu nomita Super Ĝenerala 216 00:10:52,990 --> 00:10:55,297 Variabloj, kiuj sonas sufiĉe timinda. 217 00:10:55,297 --> 00:10:57,130 Ili estas vere ĝuste giganto asociaj tabeloj 218 00:10:57,130 --> 00:10:59,900 kiu helpas apliki tiun funcionalidad de forpaso 219 00:10:59,900 --> 00:11:05,010 informo inter PHP dosierojn kiuj estas ekzistantaj sur nia ttt-servilo. 220 00:11:05,010 --> 00:11:07,760 >> La unua de tiuj super globals nomiĝas $ _GET. 221 00:11:07,760 --> 00:11:10,140 Kaj estas probable la simplaj kompreni. 222 00:11:10,140 --> 00:11:12,430 Kio okazas kun $ _GET? 223 00:11:12,430 --> 00:11:16,240 Nu, resume, la uzanto estas tuj tajpi ekstra informo 224 00:11:16,240 --> 00:11:18,390 ĉe la fino de nia URLoj. 225 00:11:18,390 --> 00:11:21,460 Kaj kion ajn ili tajpu, supozante ĝi estas formatita per speciala maniero 226 00:11:21,460 --> 00:11:25,830 nomiĝas query string, kiu estas nur aro de ŝlosila valoro paroj apartigitaj 227 00:11:25,830 --> 00:11:27,810 per ampersands. 228 00:11:27,810 --> 00:11:32,362 Tiuj ŝlosilaj valoro paroj estos stokitaj en $ _GET asocieca tabelo. 229 00:11:32,362 --> 00:11:34,070 Kaj de nia vídeo sur PHP sintakso, ni scias 230 00:11:34,070 --> 00:11:40,080 kiel labori kun asociaj tabeloj jam. 231 00:11:40,080 --> 00:11:44,090 Do tie estas ekzemplo de iuj PHP, kie eble mi estas 232 00:11:44,090 --> 00:11:50,180 ĉerpi ĉiujn la ŝlosilo valoro paroj ke la uzanto provizitaj en la URL. 233 00:11:50,180 --> 00:11:51,970 Do mi havas mian Malferma PHP delimitador. 234 00:11:51,970 --> 00:11:53,410 Mi havas foreach buklo. 235 00:11:53,410 --> 00:11:57,410 Mi ripetanta tra la Super Tutmondaj array nomita $ _GET. 236 00:11:57,410 --> 00:12:00,160 >> Kaj mi volas povi rilati al ambaŭ la ŝlosilo kaj la valoro. 237 00:12:00,160 --> 00:12:02,410 Kaj mi simple videbligi ilin eksteren, ĉiu sur ŝajne 238 00:12:02,410 --> 00:12:03,780 lia propra alineo etikedo tie. 239 00:12:03,780 --> 00:12:07,620 Mi presi ekstere kelkajn HTML kaj interpolanta la valoroj 240 00:12:07,620 --> 00:12:12,900 de ŝlosilo kaj valoron en tiu deklaro. 241 00:12:12,900 --> 00:12:16,980 >> Do ni rigardu kiel tio povus fakte funkcii sur nia IDE. 242 00:12:16,980 --> 00:12:18,980 Kaj eble tio helpos ilustri iomete 243 00:12:18,980 --> 00:12:21,880 kio GET estas efektive faranta. 244 00:12:21,880 --> 00:12:23,610 Do mi estas reen tie en mia ttt radiko. 245 00:12:23,610 --> 00:12:25,318 Kaj Mi zomi en iomete montri vin 246 00:12:25,318 --> 00:12:28,620 ke mi havas dosieron nomata, get1.php. 247 00:12:28,620 --> 00:12:31,830 >> Do ni alklaku get1.php. 248 00:12:31,830 --> 00:12:36,600 Kaj mi ne vidas ajnan enhavon. 249 00:12:36,600 --> 00:12:38,390 Tio estas stranga, ĉu ne? 250 00:12:38,390 --> 00:12:39,740 Nu, ne vere reale. 251 00:12:39,740 --> 00:12:42,030 Ĉar mi ne provizi ion en la URL. 252 00:12:42,030 --> 00:12:46,270 Mi tuj get1.php, sed mi ne provizi ajnan ŝlosilo valoro paroj 253 00:12:46,270 --> 00:12:47,450 kiel parto de mia query string. 254 00:12:47,450 --> 00:12:50,510 Do ni aldonu query string kaj vidi kion ĉi tiu dosiero povas fari. 255 00:12:50,510 --> 00:12:53,040 >> Komenci query string vi nur tajpu demandosigno. 256 00:12:53,040 --> 00:13:00,820 Tiam eble mi diru nomo = & Doug jaro = 2015. 257 00:13:00,820 --> 00:13:02,914 Kaj tiam mi batis Enter. 258 00:13:02,914 --> 00:13:04,080 Nun rimarki kio okazas. 259 00:13:04,080 --> 00:13:05,480 Mi estas ankoraŭ en get1.php. 260 00:13:05,480 --> 00:13:08,445 Sed nun mi liveris ŝlosilo valoro paroj, kaj mi estas 261 00:13:08,445 --> 00:13:14,940 presi ilin ekstere arope paragraph-- nomo, Doug-- jaro, 2015. 262 00:13:14,940 --> 00:13:17,970 Tio estas ĝuste la kodo ni simple vidis sur la glito antaŭ momento. 263 00:13:17,970 --> 00:13:22,290 >> Kaj se mi volas eble aldoni alian ŝlosilo valoro paro, & klaso = CS50. 264 00:13:22,290 --> 00:13:25,325 265 00:13:25,325 --> 00:13:27,580 Nun mi havas alian ŝlosilon valoro simila kiu estas presita eksteren 266 00:13:27,580 --> 00:13:30,025 kiam mi reviziti la URL denove. 267 00:13:30,025 --> 00:13:31,900 Nun eble tio ne formatita terure bone. 268 00:13:31,900 --> 00:13:33,660 Do mi havas alian version de get.php. 269 00:13:33,660 --> 00:13:36,350 Estas get2.php. 270 00:13:36,350 --> 00:13:39,070 >> La diferenco en ĉi unu estas mi havas CSS -dosiero, 271 00:13:39,070 --> 00:13:41,690 kaj ĝi formatojn aferojn iom pli bele por mi. 272 00:13:41,690 --> 00:13:43,940 Ĝi estas eble ne la plej bela CSS en la mondo. 273 00:13:43,940 --> 00:13:45,650 Sed estas nur alia maniero fari ĝin. 274 00:13:45,650 --> 00:13:52,840 Do mi ankoraŭ povas akiri aliron al mia variabloj uzante $ _GET. 275 00:13:52,840 --> 00:13:56,610 Kaj en ĉi tiu kazo, mi estas nur speco de farante la CSS iom pli eleganta. 276 00:13:56,610 --> 00:13:58,360 Kaj se ni pop super al miaj IDE por dua, 277 00:13:58,360 --> 00:14:06,870 Mi montros al vi en mia PHP retejo dosierujo tie, get2.php. 278 00:14:06,870 --> 00:14:10,010 Ni malfermos ĝin, iuj HTML. 279 00:14:10,010 --> 00:14:13,220 Ŝajne mi kunligi ke CSS dosiero mi parolas. 280 00:14:13,220 --> 00:14:14,570 Mi malfermu tablo etikedo. 281 00:14:14,570 --> 00:14:15,970 Kaj poste jen mia foreach buklo. 282 00:14:15,970 --> 00:14:18,450 >> Jen tio, kion mi montris sur la glito antaŭe. 283 00:14:18,450 --> 00:14:21,007 La sola diferenco estas mi havas tiun ŝlosilon kaj valoro CSS 284 00:14:21,007 --> 00:14:22,340 stiligante ke mi aplikanta al ĝi. 285 00:14:22,340 --> 00:14:25,622 Sed jen ĉio mi faras, estas mi ripetanta trans $ _GET akiri ĉiuj 286 00:14:25,622 --> 00:14:26,580 de la ŝlosilo valoro paroj. 287 00:14:26,580 --> 00:14:28,890 >> Kaj mi presi ilin eksteren kiel la tablo. 288 00:14:28,890 --> 00:14:33,230 Kaj, ŝajne, mi formati la klavoj unumaniere kun la