1 00:00:00,000 --> 00:00:05,340 2 00:00:05,340 --> 00:00:07,370 >> DOUG Lloyd: joten olemme tehneet paljon työtä C, 3 00:00:07,370 --> 00:00:09,536 ja C on todella cool kieli, koska se antaa sinulle 4 00:00:09,536 --> 00:00:12,840 kyky sukeltaa todella alhainen omaan ohjelmiin. 5 00:00:12,840 --> 00:00:16,810 Saamme tehdä asioita kuten todella minuutilta manipuloimalla 6 00:00:16,810 --> 00:00:18,800 yksittäisten tavua muistia. 7 00:00:18,800 --> 00:00:21,420 Recall että Nata todella antavat meille, että joustavuus. 8 00:00:21,420 --> 00:00:25,260 >> Mutta me aina tarvitse olla että sakko-viljan yksityiskohtaisuutta 9 00:00:25,260 --> 00:00:26,820 ohjelmiimme? 10 00:00:26,820 --> 00:00:28,210 Todennäköisesti ei, eikö? 11 00:00:28,210 --> 00:00:30,376 Ja jos aiomme olla kompromisseja on 12 00:00:30,376 --> 00:00:32,911 voi tehdä todella, todella minuutti asioita ja todella, todella 13 00:00:32,911 --> 00:00:35,910 suuria asioita, että meidän ei tarvitse ajatella noin, meillä ei ole toteuttaa 14 00:00:35,910 --> 00:00:40,290 nämä todella suuria ajatuksia jos he jo rakennettu meille, 15 00:00:40,290 --> 00:00:43,980 yleensä rakentaa iso ohjelmia tai suuria hankkeita, 16 00:00:43,980 --> 00:00:49,130 me luultavasti ajateltava saaneen lisää kielen tavaraa rakennettu 17 00:00:49,130 --> 00:00:51,300 meille, sen sijaan, matalan tason kamaa. 18 00:00:51,300 --> 00:00:53,970 Ja siellä PHP todella tulee. 19 00:00:53,970 --> 00:00:58,200 >> Nyt, yksi syy että opetamme PHP CS50 20 00:00:58,200 --> 00:01:01,020 on, että se on voimakkaasti innoittamana C. Ja itse asiassa, mielestäni, 21 00:01:01,020 --> 00:01:05,140 on oikeastaan ​​kaksi kantaisä kielet 22 00:01:05,140 --> 00:01:08,200 ovat hyvin yleisiä nykyään. 23 00:01:08,200 --> 00:01:10,110 C ja LISP. 24 00:01:10,110 --> 00:01:13,280 Ja ne ovat kantaisä kielillä koska kaikki muut modernit ohjelmointi 25 00:01:13,280 --> 00:01:17,380 kieli, joka on kehittänyt sen jälkeen on inspiroinut 26 00:01:17,380 --> 00:01:20,330 yksi tai muiden syntaktisesti. 27 00:01:20,330 --> 00:01:26,160 PHP on hyvin samankaltainen rakenteeltaan C, kun taas kielet kuten Scheme, 28 00:01:26,160 --> 00:01:27,900 esimerkiksi, joka olet ehkä kuullut, 29 00:01:27,900 --> 00:01:32,070 on raskaasti innoittamana kieli nimeltään LISP, joka on vanhempi kieli. 30 00:01:32,070 --> 00:01:34,220 >> Joten syy opetamme PHP CS50 on että, 31 00:01:34,220 --> 00:01:37,730 tuntemalla C pohjimmiltaan kuin teet tässä vaiheessa, 32 00:01:37,730 --> 00:01:41,280 poimien PHP, joka antaa sinulle kyky tehdä paljon korkeampi asiat 33 00:01:41,280 --> 00:01:44,710 kuin C ei, ei ole että suuri osa este, 34 00:01:44,710 --> 00:01:48,230 koska sinulla on jo perusajatus syntaksin. 35 00:01:48,230 --> 00:01:50,590 C on ollut noin lähes 45 vuotta tässä vaiheessa. 36 00:01:50,590 --> 00:01:52,780 PHP on ollut noin noin 20 vuotta. 37 00:01:52,780 --> 00:01:57,080 Ja että 25 vuotta välillä, ohjelmoijat 38 00:01:57,080 --> 00:02:01,540 todennut, että ne olisivat paljon mieluummin korkeampi kykyjä, 39 00:02:01,540 --> 00:02:04,970 ja virheet ja kamppailut 20 vuotta välillä 40 00:02:04,970 --> 00:02:08,210 johti PHP ja muita moderneja kieliä. 41 00:02:08,210 --> 00:02:11,039 >> PHP: n suuri valikoima kieli ohjelmisto 42 00:02:11,039 --> 00:02:14,042 että allow-- varten ohjelmistot that-- missä 43 00:02:14,042 --> 00:02:16,250 täytyy tehdä asioita, että C on itse asiassa monimutkainen. 44 00:02:16,250 --> 00:02:18,480 Niinpä esimerkiksi, työ jousten C 45 00:02:18,480 --> 00:02:21,709 on hyvin monimutkainen, koska kuten tiedämme, jousille C 46 00:02:21,709 --> 00:02:23,250 ovat todella vain ryhmät merkkiä. 47 00:02:23,250 --> 00:02:25,230 Se ei ole sisäänrakennettua tietotyyppi. 48 00:02:25,230 --> 00:02:28,220 Tai ehkä enemmän pohjimmiltaan, me ei kattanut edes C, 49 00:02:28,220 --> 00:02:30,360 mitä jos sinun ei tarvitse tehdä joitakin tietokoneen verkottuminen? 50 00:02:30,360 --> 00:02:30,860 Selvä? 51 00:02:30,860 --> 00:02:34,920 >> C on kyky tehdä se, mutta se on niin mystistä ja niin vaikea itse tehdä. 52 00:02:34,920 --> 00:02:37,580 Eikö olisi mukavaa, jos kieli oli sisäänrakennettu, helppo tapa 53 00:02:37,580 --> 00:02:38,910 toteuttaa verkottumista? 54 00:02:38,910 --> 00:02:43,420 Ja PHP on kieli, joka tekee, että tai helpottaa että hieman enemmän. 55 00:02:43,420 --> 00:02:47,740 Kuten sanoin, PHP on erittäin voimakkaasti innoittamana C. syntaksi on hyvin samankaltainen. 56 00:02:47,740 --> 00:02:51,760 Ja niin se pitäisi toivottavasti siirtyminen toisiinsa 57 00:02:51,760 --> 00:02:54,710 hieman pehmeämpi kuin jotkut Muilla kielillä voisi olla. 58 00:02:54,710 --> 00:02:58,800 >> Alkaa kirjoittaa PHP, vain avata tiedoston .php tiedostopääte. 59 00:02:58,800 --> 00:03:00,670 Teknisesti tämä ei ole todella tarvitaan, 60 00:03:00,670 --> 00:03:04,495 mutta jos haluat asioita, kuten syntaksin korostus IDE, niin että tyyppi 61 00:03:04,495 --> 00:03:07,620 nimiä, tai muuttujien nimet, tehtävät, tiedät, avainsanoja kieli 62 00:03:07,620 --> 00:03:10,090 on korostettu tiettyä väriä, voit yleensä 63 00:03:10,090 --> 00:03:14,020 halua nimetä tiedostosi tietty tiedostopääte. 64 00:03:14,020 --> 00:03:18,430 Joten olemme nimenneet tiedosto .php laajennus, mutta sitten myös PHP, 65 00:03:18,430 --> 00:03:23,310 kaikki PHP kirjoitamme, että tiedosto on suljettu näissä PHP 66 00:03:23,310 --> 00:03:25,190 delimiters että näemme tässä ruudulla. 67 00:03:25,190 --> 00:03:27,910 Kulmasuljetta? Php aloittaa. 68 00:03:27,910 --> 00:03:30,860 Sitten me kirjoittaa kaikki meidän PHP koodi että haluamme välillä. 69 00:03:30,860 --> 00:03:32,260 Ja sitten ? 70 00:03:32,260 --> 00:03:34,710 kulmasulkeen sulkea. 71 00:03:34,710 --> 00:03:37,170 >> Jos emme tee tätä, niin mitä tulee tapahtumaan? 72 00:03:37,170 --> 00:03:38,170 Se ei tule kaatumaan. 73 00:03:38,170 --> 00:03:39,410 Se ei aio todella pilata meidän ohjelma. 74 00:03:39,410 --> 00:03:41,440 Mutta se ei tule olla jonka mukaan haluamme. 75 00:03:41,440 --> 00:03:44,540 Mitä tulee tapahtumaan, todella, on että kun yritämme ja suorita tämä ohjelma, 76 00:03:44,540 --> 00:03:50,330 kaikkea ei näiden erottimet aiotaan tulostaa sanatarkasti. 77 00:03:50,330 --> 00:03:52,210 Se ei aio todella suorittaa koodia, 78 00:03:52,210 --> 00:03:56,010 se tulee vain tulostaa sen sanasta sanaan. 79 00:03:56,010 --> 00:03:57,320 >> Nyt, miksi on näin? 80 00:03:57,320 --> 00:04:00,416 Joten C on mitä kutsutaan koska käännetty kieli. 81 00:04:00,416 --> 00:04:03,040 Olet todennäköisesti tuttu askel tehdä ohjelmat, 82 00:04:03,040 --> 00:04:07,820 kääntämällä .c tiedostot ja .h tiedostot yhdeksi executable make, 83 00:04:07,820 --> 00:04:11,130 erityisesti käyttämällä Kalahtaa kuin meidän kääntäjä. 84 00:04:11,130 --> 00:04:13,030 PHP, vaikka, ei on tämä vastaa. 85 00:04:13,030 --> 00:04:15,600 PHP on mitä kutsutaan tulkittu kieli. 86 00:04:15,600 --> 00:04:16,760 Ja mitä se tarkoittaa? 87 00:04:16,760 --> 00:04:20,680 >> No, se tarkoittaa, että meidän ei tarvitse muuntaa meidän lähdekoodin nollia ja ykkösiä 88 00:04:20,680 --> 00:04:21,470 etukäteen. 89 00:04:21,470 --> 00:04:23,900 Pikemminkin siellä ohjelma, jota kutsutaan myös 90 00:04:23,900 --> 00:04:29,771 PHP, joka ymmärtää PHP ja voi tavallaan tehdä sen lennossa. 91 00:04:29,771 --> 00:04:32,520 Se ei oikeastaan ​​tarkalleen tarkka, mutta se on aika hyvä analogia 92 00:04:32,520 --> 00:04:33,760 mitä tapahtuu. 93 00:04:33,760 --> 00:04:37,230 Se tulkittaessa kyseisiä nollia ja ykkösiä lennossa. 94 00:04:37,230 --> 00:04:40,160 Joten jos se ei tiedä miten käsitellä jotain, 95 00:04:40,160 --> 00:04:42,800 jos se ei osaa prosessi PHP, luultavasti 96 00:04:42,800 --> 00:04:44,680 halusi laittaa että tekstiä siellä, eikö? 97 00:04:44,680 --> 00:04:48,960 >> Olet luultavasti halusi laittaa koodia siellä, vaikka se ei ole välillä PHP-- 98 00:04:48,960 --> 00:04:50,035 PHP erottimet. 99 00:04:50,035 --> 00:04:51,910 But-- joten se ei tule poistaa sen sinulle, 100 00:04:51,910 --> 00:04:53,576 se juuri menossa pohjimmiltaan hävittää sen. 101 00:04:53,576 --> 00:04:55,550 Joten se tulee tulostaa sen ulos ruudun. 102 00:04:55,550 --> 00:04:57,150 >> Tämä tuntuu se huono asia, mutta itse asiassa se on 103 00:04:57,150 --> 00:04:58,220 olemaan todella hyvä asia, kuten tulemme 104 00:04:58,220 --> 00:05:00,390 katso kun puhumme PHP kehityksen, 105 00:05:00,390 --> 00:05:04,010 koska se tarkoittaa, että voimme sirotella PHP ja HTML. 106 00:05:04,010 --> 00:05:06,640 Voimme käyttää niitä yhdessä luomaan dynaamisia Web-sivun. 107 00:05:06,640 --> 00:05:10,650 Mutta lisää, että video PHP kehityksen. 108 00:05:10,650 --> 00:05:12,021 >> Joten mikä on syntaksi PHP? 109 00:05:12,021 --> 00:05:13,520 Sitähän tämä video on kyse. 110 00:05:13,520 --> 00:05:14,850 Puhutaanpa siitä. 111 00:05:14,850 --> 00:05:16,490 >> Joten aloittaa, muuttujia. 112 00:05:16,490 --> 00:05:18,030 PHP muuttujat ovat olemassa. 113 00:05:18,030 --> 00:05:20,067 On vain kaksi suurta erot C. 114 00:05:20,067 --> 00:05:21,900 Ensimmäinen on se, että on olemassa ei tyyppi määrittelyksi. 115 00:05:21,900 --> 00:05:24,245 Meillä ei ole sanoa int, nieriä, kellua, kaikki jutut. 116 00:05:24,245 --> 00:05:25,620 Meillä ei tarvitse tehdä enää. 117 00:05:25,620 --> 00:05:26,810 PHP on nykyaikainen kieli. 118 00:05:26,810 --> 00:05:28,910 Se voi selvittää, mitä olet yrittää tehdä tai tehdä paras 119 00:05:28,910 --> 00:05:30,451 arvata, mitä yrität tehdä. 120 00:05:30,451 --> 00:05:31,700 Niin se on aika kiva. 121 00:05:31,700 --> 00:05:35,330 >> Toinen asia on, että kaikki muuttuvat nimet on aloitettava dollarin merkki. 122 00:05:35,330 --> 00:05:36,940 Se on vain jotain tottua. 123 00:05:36,940 --> 00:05:39,496 Se on vähän outo, koska se on niin, että PHP voi ymmärtää 124 00:05:39,496 --> 00:05:40,870 mitä muuttuva ja mikä ei. 125 00:05:40,870 --> 00:05:43,340 Joten jokainen muuttujan nimi alkaa dollarin merkki. 126 00:05:43,340 --> 00:05:46,884 Joten C voisimme sanoa jotain näin, int x = 54. 127 00:05:46,884 --> 00:05:48,550 Meillä ei tarvitse tehdä enää PHP. 128 00:05:48,550 --> 00:05:52,540 Voimme vain sanoa $ x = 54. 129 00:05:52,540 --> 00:05:55,920 Ja voisimme sanoa esimerkiksi, C, jos olisimme punta-mukana CS50 .h 130 00:05:55,920 --> 00:06:00,314 header-tiedosto, voisimme sanoa string lause = "Tämä on CS50." 131 00:06:00,314 --> 00:06:01,980 Meidän ei tarvitse tehdä sitä PHP, vaikka. 132 00:06:01,980 --> 00:06:04,865 Voimme vain sanoa $ lause = "Tämä on CS50." 133 00:06:04,865 --> 00:06:08,760 Ja itse asiassa, merkkijono on nyt sisäänrakennettu tietotyyppi PHP, 134 00:06:08,760 --> 00:06:10,950 tai pikemminkin PHP ymmärtää mikä merkkijono on. 135 00:06:10,950 --> 00:06:15,612 Se erillään array Merkkien kuin se on C. 136 00:06:15,612 --> 00:06:17,570 Kaikki suosikki ehdollinen lausunnot C 137 00:06:17,570 --> 00:06:19,520 ovat vielä käytettävissä voit käyttää. 138 00:06:19,520 --> 00:06:21,140 Joten ei iso siirtyminen siellä. 139 00:06:21,140 --> 00:06:23,400 Voimme say-- voimme olla jos lausuntoja, kuten tämä. 140 00:06:23,400 --> 00:06:28,210 jos $ y 43, tai $ z = 15. 141 00:06:28,210 --> 00:06:29,690 Niin se on melko yksinkertainen. 142 00:06:29,690 --> 00:06:31,980 Meillä voi olla, jos ja muuta. 143 00:06:31,980 --> 00:06:34,210 Meillä voi olla, jos ja muuta, jos. 144 00:06:34,210 --> 00:06:36,430 >> Ja huomaa jotain ihan kiva täällä, ja tämä 145 00:06:36,430 --> 00:06:39,620 on tavallaan yksi niistä Edut PHP vs. C, ilmoitus 146 00:06:39,620 --> 00:06:41,510 mitä toimintoa emme käytä täällä? 147 00:06:41,510 --> 00:06:47,737 Käytämme == verrata muuttuja, $ nimi, merkkijono. 148 00:06:47,737 --> 00:06:49,070 Emme voineet tehdä sen C, eikö? 149 00:06:49,070 --> 00:06:53,200 Jouduimme käyttämään toiminto nimeltään StrComp tai StrEndComp tai 150 00:06:53,200 --> 00:06:54,840 etuyhteydessä serkut. 151 00:06:54,840 --> 00:06:56,980 >> Ja niin jo näemme nämä edut. 152 00:06:56,980 --> 00:07:00,930 Meidän ei tarvitse tehdä jotain typerä tai ehkä unintuitive 153 00:07:00,930 --> 00:07:03,540 kuten soittaa toiminto nimeltään StrComp jos vain haluat testata 154 00:07:03,540 --> 00:07:05,237 onko arvo on merkkijono. 155 00:07:05,237 --> 00:07:07,820 Voisin vain käyttää yhtä kuin tasavertaisten, kuten Voisin tehdä mitään muuta. 156 00:07:07,820 --> 00:07:09,560 Joten ei hyötyä. 157 00:07:09,560 --> 00:07:13,350 >> Joskus, muuten, saatat katso if yhdeksi sanaksi, elseif. 158 00:07:13,350 --> 00:07:14,910 Ja se on OK PHP samoin. 159 00:07:14,910 --> 00:07:17,020 Joten joskus saatat nähdä, että. 160 00:07:17,020 --> 00:07:17,790 Se ei ole kirjoitusvirhe. 161 00:07:17,790 --> 00:07:21,830 PHP todella ymmärtää elseif. 162 00:07:21,830 --> 00:07:23,980 En tiedä miksi he päätti toteuttaa että, 163 00:07:23,980 --> 00:07:28,220 mutta kuten olemme nähneet monta kertaa koko meidän videoita toistaiseksi, 164 00:07:28,220 --> 00:07:30,460 me ohjelmoijia kiva, jos voimme tehdä asioita nopeasti, 165 00:07:30,460 --> 00:07:33,660 joten päästä eroon, että tilaa on ilmeisesti suuri etu. 166 00:07:33,660 --> 00:07:34,800 >> Niin, että jos ja elseif. 167 00:07:34,800 --> 00:07:37,540 Meillä on myös kolmen komponentin operaattori, Recall kysymysmerkki paksusuoli, 168 00:07:37,540 --> 00:07:43,262 sillä todella lyhyt muoto, jos muu tai ehdollinen haarautuvan. 169 00:07:43,262 --> 00:07:45,470 Ja ilmeisesti, tässä, mitä me yritämme tehdä täällä 170 00:07:45,470 --> 00:07:49,720 on määrittää muuttuja $ Kirje joko tosi tai epätosi, 171 00:07:49,720 --> 00:07:54,110 riippuen siitä $ var on kirjaimella. 172 00:07:54,110 --> 00:07:57,320 Joten tämä on melko samanlainen isalpha että olemme tuttuja C. 173 00:07:57,320 --> 00:07:59,010 Tämä on tavallaan vastaava PHP. 174 00:07:59,010 --> 00:08:01,550 Toiminto on ilmeisesti nimeltään ctype_alpha, 175 00:08:01,550 --> 00:08:03,450 mutta se miten sen teemme PHP. 176 00:08:03,450 --> 00:08:08,560 Joten kaikki tämä tulee olemaan on, jos $ Var on kirje, $ kirje on totta. 177 00:08:08,560 --> 00:08:13,820 Jos $ var ei ole kirjain, $ Kirjain on väärä. 178 00:08:13,820 --> 00:08:15,820 >> Meillä on myös kytkin lausuntoja edelleen. 179 00:08:15,820 --> 00:08:17,870 Muistutamme niillä, C samoin. 180 00:08:17,870 --> 00:08:22,480 Huipulla siellä, näin teemme jotain get int tai saada merkkijono. 181 00:08:22,480 --> 00:08:23,845 Niin PHP on, että rakennettu. 182 00:08:23,845 --> 00:08:25,470 Emme tarvitse CS50 kirjasto enää. 183 00:08:25,470 --> 00:08:27,237 Voimme vain käyttää toimintoa readline. 184 00:08:27,237 --> 00:08:29,820 Mitä se aikoo tehdä on tulosta ulos viesti, "Sinun valtio, 185 00:08:29,820 --> 00:08:33,820 please "ja sitten vilkkuu nopea odottaa käyttäjää syöttämään 186 00:08:33,820 --> 00:08:34,739 joitakin tietoja. 187 00:08:34,739 --> 00:08:36,530 Nyt huomaa mitä muuta voimme tehdä kytkimellä. 188 00:08:36,530 --> 00:08:39,105 Jos olet käyttänyt sitä ennen, ehkä muistatte, että kytkin 189 00:08:39,105 --> 00:08:44,960 rajoittuu melko paljon kokonaislukuja ja merkkiä, mutta nyt voimme käyttää jouset. 190 00:08:44,960 --> 00:08:50,190 Ja itse asiassa, kytkin selvitys PHP on melko vähän joustavampi 191 00:08:50,190 --> 00:08:54,880 kuin sen serkku C. 192 00:08:54,880 --> 00:08:55,380 Silmukoita. 193 00:08:55,380 --> 00:08:58,130 Aivan kuten konditionaalien, kaikki vanhat suosikit ovat edelleen olemassa. 194 00:08:58,130 --> 00:09:00,740 Olemme samalla silmukoita, jotka lasketaan 1-100 tässä tapauksessa. 195 00:09:00,740 --> 00:09:03,940 Olemme tehdä, kun silmukoita että laskea 1-100, 196 00:09:03,940 --> 00:09:06,200 ja meillä on silmukoita että laskea 1-100. 197 00:09:06,200 --> 00:09:07,220 Joten ei iso harppaus siellä. 198 00:09:07,220 --> 00:09:09,360 Syntaksi on melko paljon täsmälleen sama, 199 00:09:09,360 --> 00:09:11,760 paitsi nyt käytämme dollarin merkki muuttuja sijaan 200 00:09:11,760 --> 00:09:17,260 julistaa kokonaisluku muuttujia tai jotain meidän laskurit. 201 00:09:17,260 --> 00:09:20,090 >> Tässä kun asiat paljon parempi kuin C, vaikka. 202 00:09:20,090 --> 00:09:21,020 Taulukot. 203 00:09:21,020 --> 00:09:23,020 Joten Muistan kun olimme puhumme C, jotta 204 00:09:23,020 --> 00:09:25,560 meille kasvaa ja kutistua tietopakettia, 205 00:09:25,560 --> 00:09:28,310 tarvitsimme lajitella maksukyvyttömyyden Tämän ajatuksen linkitetty lista, 206 00:09:28,310 --> 00:09:30,780 koska C taulukot kiinnitettiin koko. 207 00:09:30,780 --> 00:09:31,800 Emme voineet kutistua niitä. 208 00:09:31,800 --> 00:09:32,930 Emme voineet kasvattaa ne. 209 00:09:32,930 --> 00:09:36,074 Meidän piti kohdentaa muistia ja tehdä kaikki tämä hulluus 210 00:09:36,074 --> 00:09:38,490 tai käytä liittyvät luetteloita, joka vievät hieman enemmän tilaa. 211 00:09:38,490 --> 00:09:41,590 Mutta PHP, taulukot ovat ole vahvistettu koko enää. 212 00:09:41,590 --> 00:09:43,240 Ne voivat kasvaa ja ne voivat kutistua. 213 00:09:43,240 --> 00:09:46,660 Joten jälleen, nämä 20 vuotta, joka vallitsi ensimmäisen julkaisun C 214 00:09:46,660 --> 00:09:49,440 ja ensimmäinen julkaisu PHP, päätimme, että te tiedätte, 215 00:09:49,440 --> 00:09:51,670 se olisi todella suuri jos voisimme tehdä tämän. 216 00:09:51,670 --> 00:09:54,100 Ja niin otimme tämän. 217 00:09:54,100 --> 00:09:58,040 >> Joten PHP paneelit eivät ole sidoksissa koko, ja koska PHP ei oikeastaan 218 00:09:58,040 --> 00:10:03,090 on ohjelmoija avautuvat etupuolelle käsitteet tyypit, 219 00:10:03,090 --> 00:10:05,110 Voimme sekoittaa tietotyyppejä meidän paneelit, liian. 220 00:10:05,110 --> 00:10:08,100 Joten emme edes tarvitse käyttää kaikkia kokonaislukuja tai kaikki kelluvat pistettä, 221 00:10:08,100 --> 00:10:12,826 meillä voi olla yhdistelmä kaikista erilaisia ​​yhdessä array. 222 00:10:12,826 --> 00:10:14,700 Julistamisesta array on melko yksinkertainen. 223 00:10:14,700 --> 00:10:16,116 Se on aivan kuin muitakin muuttujia. 224 00:10:16,116 --> 00:10:20,020 $ Nums = array (1, 2, 3, 4), array on funktio 225 00:10:20,020 --> 00:10:22,760 joka on rakennettu PHP, joka luo array sinulle. 226 00:10:22,760 --> 00:10:28,315 Tämä luo erilaisia ​​neljästä arvosta, numeroita tässä tapauksessa nimeltään $ nums. 227 00:10:28,315 --> 00:10:29,940 Ja siellä on enemmän kuin yksi tapa tehdä se. 228 00:10:29,940 --> 00:10:32,420 Ja aiomme katso tämä paljon PHP. 229 00:10:32,420 --> 00:10:36,380 PHP on kehitetty monia eri ihmiset ja kasvaa ja kasvaa ja kasvaa. 230 00:10:36,380 --> 00:10:40,050 Ei yleensä ole vain kaksi tai kolme tapaa tehdä jotain PHP, 231 00:10:40,050 --> 00:10:42,170 siellä on yleensä noin 10 tai 20. 232 00:10:42,170 --> 00:10:45,300 Tässä on vain yksi yhteinen tapa julistaa array. 233 00:10:45,300 --> 00:10:48,310 $ Nums = hakasulkeen 1, 2, 3, 4. 234 00:10:48,310 --> 00:10:53,170 Joten tämä on tavallaan samanlainen kuin C: n kulmaan br-- kihara ahdin merkintä, pikemminkin. $ - 235 00:10:53,170 --> 00:10:58,525 tai se olisi int nums neliö Suluissa vastaa kihara ahdin 1, 2, 3, 4. 236 00:10:58,525 --> 00:11:02,710 PHP on $ nums = neliö kiinnikkeet 1, 2, 3, 4. 237 00:11:02,710 --> 00:11:08,920 Mutta molemmat näistä esimerkeistä täällä antaa minulle johdosta neljä tässä tapauksessa kokonaislukuja. 238 00:11:08,920 --> 00:11:10,920 >> Mitä jos haluan tack jotain nyt? 239 00:11:10,920 --> 00:11:14,760 No voin vain sanoa $ nums 4, joka uudelleen, olemme yhä laskettuna 0 täältä 240 00:11:14,760 --> 00:11:17,800 PHP, olisi viides alkiota. 241 00:11:17,800 --> 00:11:18,990 Voin vain sanoa, että. 242 00:11:18,990 --> 00:11:22,860 En aio kärsiä SEG vika, koska minun matriisi on vain 243 00:11:22,860 --> 00:11:24,337 tulee kasvamaan sijoittaa että. 244 00:11:24,337 --> 00:11:25,420 Se on ihan kiva, eikö? 245 00:11:25,420 --> 00:11:28,400 Ja itse asiassa, en edes tarvitse määritellä, missä haluan laittaa sen. 246 00:11:28,400 --> 00:11:31,220 Voin vain sanoa tämän ja vain tack se aivan loppuun asti, 247 00:11:31,220 --> 00:11:34,099 tai voisin jopa vain sanoa $ nums 20 tai 1000. 248 00:11:34,099 --> 00:11:35,140 Se ei ole oikeastaan ​​väliä. 249 00:11:35,140 --> 00:11:38,330 Se on edelleen juuri menossa tack se aivan loppuun asti. 250 00:11:38,330 --> 00:11:41,490 >> Voin siis kasvaa, ja as-- olemme aio peitellä sitä täällä, 251 00:11:41,490 --> 00:11:45,360 mutta voin liitos tai kaistale elementtejä ulos array samoin, 252 00:11:45,360 --> 00:11:50,064 ja array kutistuu mukautumaan että nyt puuttuvat tai tyhjää tilaa. 253 00:11:50,064 --> 00:11:52,230 On toinenkin tapa tack jotain päälle jono, 254 00:11:52,230 --> 00:11:54,330 joka on toiminto nimeltään array_push. 255 00:11:54,330 --> 00:11:57,860 Joten jälleen, juuri tämä ajatus on voi tehdä asioita monin eri tavoin. 256 00:11:57,860 --> 00:12:01,950 Joten olemme nähneet kolmella eri tavalla nyt tack toinen elementti päälle jono. 257 00:12:01,950 --> 00:12:06,900 Joten tämä lisää toinen elementti loppuun $ nums jono. 258 00:12:06,900 --> 00:12:08,340 Ja voimme sekoittaa meidän tietotyyppejä. 259 00:12:08,340 --> 00:12:13,110 Niin voisin olla joukko ei 1, 2, 3, 4, mutta 1, totta, 3, 4, 260 00:12:13,110 --> 00:12:16,420 jos totta on Boolen, ja sitten jos haluan tack toinen elementti 261 00:12:16,420 --> 00:12:20,860 kyseiseen array, ehkä merkkijono, merkkijono "viisi" voisin tehdä että. 262 00:12:20,860 --> 00:12:26,110 Ja nyt minun array olisi olla 1, totta, 3, 4, viisi. 263 00:12:26,110 --> 00:12:28,640 Sana viisi, ei kokonaisluku 5. 264 00:12:28,640 --> 00:12:31,270 Niin paljon joustavuutta siellä. 265 00:12:31,270 --> 00:12:33,290 >> Joustavuus saa jopa parempi, vaikka, 266 00:12:33,290 --> 00:12:37,530 koska PHP on tukea jotain kutsutaan tällainen taulukko. 267 00:12:37,530 --> 00:12:40,660 Ja me tavallaan epämääräisesti puhui noin assosiatiiviset taulukot C 268 00:12:40,660 --> 00:12:44,740 yhteydessä hash taulukoita, koska mitä assosiatiiviset taulukot ovat oikeastaan ​​kaikki 269 00:12:44,740 --> 00:12:48,950 noin tekevät avain arvopari kuvaukset. 270 00:12:48,950 --> 00:12:53,410 Ja tässä tapauksessa, keys-- jos olemme tuttuja paneelit C-, 271 00:12:53,410 --> 00:12:55,440 avaimet ovat indeksiluvut. 272 00:12:55,440 --> 00:12:57,530 0, 1, 2, 3. 273 00:12:57,530 --> 00:13:03,070 Ja arvot ovat mitä löydämme, että array 0, array 1, array 2, ja niin edelleen. 274 00:13:03,070 --> 00:13:06,310 Joten avaimet ovat indeksit, ja arvot ovat 275 00:13:06,310 --> 00:13:10,060 mikä on että joukko paikalla, jonka kyseisen indeksin. 276 00:13:10,060 --> 00:13:15,130 >> Mutta PHP, meidän ei tarvitse tehdä tätä käsite array 0, array 1, array 2 277 00:13:15,130 --> 00:13:15,830 enää. 278 00:13:15,830 --> 00:13:21,025 Voimme nyt käyttää todellisia sanoja karttaan avaimet arvoja. 279 00:13:21,025 --> 00:13:22,650 Ja niin voisin sanoa jotain tällaista. 280 00:13:22,650 --> 00:13:26,710 Voisin luoda matriisi hakasulje syntaksi seuraavasti. 281 00:13:26,710 --> 00:13:30,685 $ Pizzat = hakasulkeen "Juusto" ja sitten 282 00:13:30,685 --> 00:13:37,210 tällainen kaksoisnuolella merkintätapa, 8.99, "pepperoni," nuoli 10.99-- 9,99, 283 00:13:37,210 --> 00:13:37,880 ja niin edelleen. 284 00:13:37,880 --> 00:13:39,060 Ja niin mitä täällä tapahtuu? 285 00:13:39,060 --> 00:13:41,040 Mitä minä todella tekee? 286 00:13:41,040 --> 00:13:43,990 Olen luomassa keskeinen arvo pari kuvaukset. 287 00:13:43,990 --> 00:13:49,060 Joten sen sijaan sanomalla esimerkiksi, pizzat 0, kpl 1, pizzat 2, 288 00:13:49,060 --> 00:13:52,350 Voin nyt sanoa pizzat juusto, pizzat pepperoni, 289 00:13:52,350 --> 00:13:55,120 ja viittaavat arvoihin niihin liittyviä. 290 00:13:55,120 --> 00:13:56,970 >> Joten tässä on meidän avaimia vihreällä. 291 00:13:56,970 --> 00:13:59,870 Juusto, pepperoni, vihannes, puhveli kana. 292 00:13:59,870 --> 00:14:04,200 Tässä on nuoli, joka tekee tämä keskeinen arvo pari kartoitus. 293 00:14:04,200 --> 00:14:07,420 Ja sitten täällä ovat arvoja tässä array Sijainti. 294 00:14:07,420 --> 00:14:10,330 Joten se on kuin sanoisi array 0 on 8.99. 295 00:14:10,330 --> 00:14:11,720 Tärkeintä on 0. 296 00:14:11,720 --> 00:14:13,600 Arvo on 8.99. 297 00:14:13,600 --> 00:14:19,370 Voin nyt sanoa array juustoa, tai tässä tapauksessa pizzat juusto, juusto on avain, 298 00:14:19,370 --> 00:14:23,340 ja mitä löydän osoitteessa pizzat juusto on 8.99. 299 00:14:23,340 --> 00:14:25,540 Se arvon että pidän siellä. 300 00:14:25,540 --> 00:14:28,124 >> Voin siis sanoa asioita, kuten. $ Pizzajuusto = 7.99. 301 00:14:28,124 --> 00:14:29,040 Sano Minulla on myynnissä. 302 00:14:29,040 --> 00:14:31,750 Haluan dis-- haluan pudottaa hinta juuston pizzaa. 303 00:14:31,750 --> 00:14:35,620 Tai voin käyttää kasvis pizza osana kunnossa, 304 00:14:35,620 --> 00:14:39,990 tai voin lisätä uusi elementti minun array, aivan kuten voisin tehdä aikaisemmin. 305 00:14:39,990 --> 00:14:44,680 Voin lisätä uuden elementin tähän assosiatiivinen joukko avaimella "pekoni" 306 00:14:44,680 --> 00:14:49,250 ja arvo 13.49. 307 00:14:49,250 --> 00:14:53,820 >> Mutta tällainen esittelee ongelman, jos ajattelee sitä toista. 308 00:14:53,820 --> 00:14:55,721 Kuinka voisimme kerrata tällä array? 309 00:14:55,721 --> 00:14:56,220 Oikea? 310 00:14:56,220 --> 00:14:59,820 C, olisimme vain silmukka, tyypillisesti, että 311 00:14:59,820 --> 00:15:03,650 kulkisi 0 taulukon koko miinus 1. 312 00:15:03,650 --> 00:15:08,060 Array on n elementtejä on, voimassa indeksit ovat 0-n miinus 1. 313 00:15:08,060 --> 00:15:11,530 Jotta voisimme käyttää varten silmukan selata jokaisen elementin. 314 00:15:11,530 --> 00:15:13,530 >> Mutta se ei oikeastaan asia enää, eikö? 315 00:15:13,530 --> 00:15:17,360 Nyt jos meillä on keskeinen arvo pari kuvaukset jossa avaimet ovat sanoja, 316 00:15:17,360 --> 00:15:19,970 Miten me kerrata hoitaakseen kaikki sanat? 317 00:15:19,970 --> 00:15:22,420 No, onneksi PHP on tapa käsitellä tämäkin, 318 00:15:22,420 --> 00:15:24,580 ja niin me hypätä takaisin piireihin toista 319 00:15:24,580 --> 00:15:30,780 ottaa käyttöön neljäs eräänlainen silmukka, joka olemassa PHP kutsutaan foreach silmukka. 320 00:15:30,780 --> 00:15:34,430 Ja mitä foreach silmukka tekee on se on pohjimmiltaan sama ajatus. 321 00:15:34,430 --> 00:15:36,060 Voit käyttää sitä mihin tahansa array. 322 00:15:36,060 --> 00:15:38,100 Mutta se on pohjimmiltaan sama idea kuin varten silmukka, 323 00:15:38,100 --> 00:15:40,750 paitsi käyttämisen sijasta indeksiluvut, juuri 324 00:15:40,750 --> 00:15:45,830 on tämä outo syntaksin jossa soitat jokainen elementti 325 00:15:45,830 --> 00:15:47,550 nimi tämän silmukan. 326 00:15:47,550 --> 00:15:49,258 >> Joten tässä tapauksessa, foreach ($ array $ avain). 327 00:15:49,258 --> 00:15:52,900 328 00:15:52,900 --> 00:15:56,450 Pohjimmiltaan, koska tuon kommentin toteaa, sisällä että foreach silmukka, 329 00:15:56,450 --> 00:16:00,466 se mene yli joka ikinen elementti $ array, joka on tyypillisesti 330 00:16:00,466 --> 00:16:03,340 olemaan tällainen taulukko, mutta voi todella olla mitä tahansa array 331 00:16:03,340 --> 00:16:05,419 että haluat PHP. 332 00:16:05,419 --> 00:16:07,210 Ja joka kerta, että silmukka saatat 333 00:16:07,210 --> 00:16:13,780 ovat sanoneet $ array hakasulkeita $ I, voit vain sanoa $ avain. 334 00:16:13,780 --> 00:16:22,340 Jotta $ avain tulee alias jokaiselle indeksi PHP assosiatiivisia array, 335 00:16:22,340 --> 00:16:23,710 ja niin voit käyttää sitä niin. 336 00:16:23,710 --> 00:16:25,897 >> Niinpä esimerkiksi, olemme nyt saimme pizzat array. 337 00:16:25,897 --> 00:16:27,730 Olen tavallaan työntää se nurkkaan siellä 338 00:16:27,730 --> 00:16:31,080 joten voimme käyttää sitä tehdä nopea esimerkki. 339 00:16:31,080 --> 00:16:36,420 Jos sanon foreach ($ pizzoja $ Pizza), hyvin, mitä tapahtuu? 340 00:16:36,420 --> 00:16:42,400 No, aion kerrata läpi jokaisen yksittäinen elementti array $ pizzat, 341 00:16:42,400 --> 00:16:46,670 ja näin, aion soittaa jokainen elementti, kun olen sisällä 342 00:16:46,670 --> 00:16:49,400 ruumiin että silmukka, $ pizza. 343 00:16:49,400 --> 00:16:52,440 >> Niin, että on eräänlainen stand-in, muistaa, että $ pizza 344 00:16:52,440 --> 00:16:59,140 on stand-in sanomalla $ Pizzat hakasulkeita $ i 345 00:16:59,140 --> 00:17:03,370 jos käytimme silmukka, jossa voisi siirtyä $ i = 0, tässä tapauksessa, 346 00:17:03,370 --> 00:17:06,089 $ I = 3. 347 00:17:06,089 --> 00:17:09,780 Jos meillä ei olisi keskeinen arvo pareja täällä, tämä olisi elementti 0, 1, 2, 3, 348 00:17:09,780 --> 00:17:16,390 ja me käyttäisimme silmukka mennä $ Pizzat 0, $ pizzat 1, $ pizzat 2, 349 00:17:16,390 --> 00:17:17,750 $ Pizzat 3. 350 00:17:17,750 --> 00:17:23,130 Joten nyt vain $ pizza on korvaamalla kyseisen henkilön avain. 351 00:17:23,130 --> 00:17:25,630 >> Joten mitä tämä tulee tulostaa? 352 00:17:25,630 --> 00:17:29,030 Olen tulostamalla $ pizza. 353 00:17:29,030 --> 00:17:35,270 Mitä minä löytää at-- jos olen tulostaa $ pizzat, $ i? 354 00:17:35,270 --> 00:17:35,770 Oikea? 355 00:17:35,770 --> 00:17:38,680 Jos aion tulostaa i: s elementti pizzat, 356 00:17:38,680 --> 00:17:40,070 Mitä minä tulostaa? 357 00:17:40,070 --> 00:17:42,580 Aion tulostaa arvot kyseiselle paikalle, eikö? 358 00:17:42,580 --> 00:17:45,370 Kuten jos teemme Tässä yhteydessä C, 359 00:17:45,370 --> 00:17:49,786 emme yleensä käytä iteraattori muuttuja, int i = 0, i on pienempi kuin 3, 360 00:17:49,786 --> 00:17:52,900 i ++, tulostaa 0, 1, 2, 3. 361 00:17:52,900 --> 00:17:57,500 Olemme tulostamisen array 0, array 1, array 2, array 3. 362 00:17:57,500 --> 00:17:59,580 Ja niin mitä tämä tulostaa on tämä. 363 00:17:59,580 --> 00:18:01,150 Se on luettelo hinnoista. 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 >> Nyt nopeasti huomata täällä. 366 00:18:06,900 --> 00:18:10,900 Foreach silmukka ei välttämättä tulostaa asiat järjestykseen. 367 00:18:10,900 --> 00:18:12,770 Se ei ole taattu. 368 00:18:12,770 --> 00:18:13,550 Se yleensä tekee. 369 00:18:13,550 --> 00:18:17,667 Se perustuu yleensä järjestyksessä jotka elementit on lisätty array, 370 00:18:17,667 --> 00:18:18,750 niin vain muistaa se. 371 00:18:18,750 --> 00:18:20,830 Se ei ehkä ole kunnossa. 372 00:18:20,830 --> 00:18:23,930 Mutta foreach silmukka kerrata poikki jokainen elementti 373 00:18:23,930 --> 00:18:25,060 array kyseessä. 374 00:18:25,060 --> 00:18:27,980 Tässä tapauksessa, jälleen, että matriisi on $ pizzat. 375 00:18:27,980 --> 00:18:32,920 >> Voin vaihtaa syntaksia, vaikka, jos Haluan sekä avain ja arvo. 376 00:18:32,920 --> 00:18:37,179 Sen sijaan, että sanonta $ pizzat kuten $ pizza, voin sanoa tämän. 377 00:18:37,179 --> 00:18:39,470 Ja jos tarkastellaan, mitä olen korostettuna vihreänä täällä, 378 00:18:39,470 --> 00:18:42,130 se näyttää keskeinen arvo pari kartoitus. 379 00:18:42,130 --> 00:18:45,980 Joten jos sinä-- vaikka et ole täysin varma, mitä se aikoo tehdä, 380 00:18:45,980 --> 00:18:49,300 arvata että $ keveiden on menossa 381 00:18:49,300 --> 00:18:53,800 on avain tässä tapauksessa ja $ Hinta tulee olemaan arvo. 382 00:18:53,800 --> 00:18:59,200 Joten olen korvaamalla nyt jokainen elementti on $ pizzat keskeisenä arvo pari, 383 00:18:59,200 --> 00:19:03,900 ja nyt voin viitata avaimen ja arvo, joka saattaa kätevä, 384 00:19:03,900 --> 00:19:05,590 esimerkiksi, seuraavasti. 385 00:19:05,590 --> 00:19:10,170 >> "Koko" - tämä on paljon tulostus meneillään here-- "koko" 386 00:19:10,170 --> 00:19:17,300 topping "pizza maksaa $" hinta, ja sitten Olen tulostaa ajan ja kenoviiva n. 387 00:19:17,300 --> 00:19:23,420 Joten nyt, ilmoitus taas minulla on pääsy avain, $ keveiden, ja arvo, $ hinta. 388 00:19:23,420 --> 00:19:26,647 Joten voitte arvata, mitä tämä on menossa tulostaa? 389 00:19:26,647 --> 00:19:29,480 Siellä on paljon tulostaa lausuntoja, mutta on vain yksi kenoviiva n, 390 00:19:29,480 --> 00:19:33,410 joten se tulee tulostaa jotain entire-- yhdellä rivillä koodia. 391 00:19:33,410 --> 00:19:36,965 >> Jos voin viitata avain ja arvo, niin nyt, 392 00:19:36,965 --> 00:19:39,090 eikä vain pysty tulostaa hintoja, 393 00:19:39,090 --> 00:19:41,330 Voin tulostaa jotain tällaista. 394 00:19:41,330 --> 00:19:43,780 "Koko juusto pizza maksaa $ 8.99." 395 00:19:43,780 --> 00:19:47,150 Ja nyt olen käyttäen kaikki keys-- juusto, pepperoni, vihannes, 396 00:19:47,150 --> 00:19:49,640 Buffalo chicken-- ja arvot. 397 00:19:49,640 --> 00:19:53,980 8.99, 9.99, 10.99, 11.99 Niin se on vain eri tavalla 398 00:19:53,980 --> 00:19:57,840 tehdä foreach silmukka, että sen sijaan vain antaa sinulle pääsyn arvoja, 399 00:19:57,840 --> 00:20:02,950 se vain antaa sinä-- se antaa sinulle pääsy avaimia ja arvoja. 400 00:20:02,950 --> 00:20:04,411 >> Joten tulostamalla tiedot. 401 00:20:04,411 --> 00:20:07,410 Olen jo tehnyt sen pari eri tavoin, olet ehkä huomannut. 402 00:20:07,410 --> 00:20:11,080 Kaksi tehtävää olemme ensisijaisesti nähnyt printti- ja kaiku. 403 00:20:11,080 --> 00:20:14,380 Ja aika paljon kaikki aikomukset ja tarkoituksiin, ne ovat täsmälleen samat. 404 00:20:14,380 --> 00:20:17,130 They're-- siellä hyvin hienovarainen erotuksella, että ei ole edes kannata 405 00:20:17,130 --> 00:20:21,130 joutumassa, mutta pohjimmiltaan kaikkialla voit käyttää tulostaa voit todennäköisesti käyttää 406 00:20:21,130 --> 00:20:22,370 echo samoin. 407 00:20:22,370 --> 00:20:23,610 >> Ja se ei ole vain kaksi. 408 00:20:23,610 --> 00:20:26,970 PHP on paljon erilaisia tapoja tulostaa asioita, 409 00:20:26,970 --> 00:20:30,520 ja se on myös keinoja nivoa muuttujat keskelle merkkijono. 410 00:20:30,520 --> 00:20:32,860 Joten muistamme C, oletteko muista mitä toiminto 411 00:20:32,860 --> 00:20:37,580 voimme käyttää korvata muuttujia asioihin haluamme tulostaa? 412 00:20:37,580 --> 00:20:40,160 Olet luultavasti käyttää tätä toimivat melko paljon. 413 00:20:40,160 --> 00:20:42,290 printf, eikö? 414 00:20:42,290 --> 00:20:45,290 Joten tämä on mitä meillä oli ennen sisällä n yhteydessä meidän foreach silmukka. 415 00:20:45,290 --> 00:20:48,000 Meillä oli näitä viisi erillinen tulostaa lausuntoja, 416 00:20:48,000 --> 00:20:50,330 koska se oli ainoa tapa En todellakaan tiennyt tuolloin 417 00:20:50,330 --> 00:20:52,450 miten tulostaa viestejä. 418 00:20:52,450 --> 00:20:59,560 En tiennyt miten yhdistää muuttuja $ keveiden minun PHP. 419 00:20:59,560 --> 00:21:03,700 No, jos vain ottaa villi arvaus, printf, se todella olisi toiminut. 420 00:21:03,700 --> 00:21:08,980 printf on toiminto, että voin käyttää PHP, aivan kuten voin käyttää sitä C. 421 00:21:08,980 --> 00:21:11,880 >> Ja niin jotain tällaista, printf, uudelleen, olemme tuttuja että. 422 00:21:11,880 --> 00:21:16,420 Ensimmäinen% s korvataan kanssa arvo $ keveiden. 423 00:21:16,420 --> 00:21:19,700 Toinen% s korvataan kanssa arvo $ hinta. 424 00:21:19,700 --> 00:21:22,630 Ja niin olen interpellating, joka on vain hieno tapa 425 00:21:22,630 --> 00:21:25,400 sanoa olen kiinni muuttujia kyseisessä paikassa. 426 00:21:25,400 --> 00:21:31,000 Joten olen kytkemällä $ keveiden jossa punainen% s on ja $ hinta jossa sininen% s 427 00:21:31,000 --> 00:21:36,060 on, ja sitten haluan saada viestin, "Koko juusto pizza maksaa $ 8.99." 428 00:21:36,060 --> 00:21:37,750 >> Ei ole ainoa tapa voin tehdä sen, vaikka. 429 00:21:37,750 --> 00:21:39,760 Ehkä en haluaisi käyttää tätä menetelmää. 430 00:21:39,760 --> 00:21:44,890 Tämä on oikeastaan ​​mitä yleisimmin kutsutaan muuttuja välikysymykseen. 431 00:21:44,890 --> 00:21:45,690 Voin käyttää kaikua. 432 00:21:45,690 --> 00:21:47,737 Voisin käyttää tulostaa myös, kuten näemme. 433 00:21:47,737 --> 00:21:48,820 Mutta mitä täällä tapahtuu? 434 00:21:48,820 --> 00:21:51,520 >> Ensinnäkin minun täytyy paeta dollarin merkki. 435 00:21:51,520 --> 00:21:55,140 Koska muistan, kun olimme todella tulostamalla hinnat pizzat, 436 00:21:55,140 --> 00:21:59,370 Olin todella muotoilut niitä raha lukuja dollarin merkki. 437 00:21:59,370 --> 00:22:05,635 Mutta käytämme dollarin merkkejä myös edustamaan muuttujanimet PHP, 438 00:22:05,635 --> 00:22:08,010 ja erityisesti kun olen tällä menetelmällä on kihara 439 00:22:08,010 --> 00:22:10,040 ahdin muuttuja Välikysymykseen menetelmä, tarvitsen 440 00:22:10,040 --> 00:22:13,490 paeta minun dollarin merkki, joten se ei ajatella Puhun muuttuja. 441 00:22:13,490 --> 00:22:16,920 Se tulee todella, kirjaimellisesti tulostaa dollarin merkki. 442 00:22:16,920 --> 00:22:19,530 >> Joten tavallaan analogize sen mitä näet lopussa siellä. 443 00:22:19,530 --> 00:22:22,832 Se ei oikeastaan Tulosta kenoviiva n, eikö? 444 00:22:22,832 --> 00:22:24,290 Se tulostaa uusi rivi merkki. 445 00:22:24,290 --> 00:22:26,750 Tämä is-- se ei aio Tulosta kenoviiva dollarin merkki, 446 00:22:26,750 --> 00:22:30,130 se tulee tulostaa vain dollarin merkki merkki. 447 00:22:30,130 --> 00:22:30,640 Sama ajatus. 448 00:22:30,640 --> 00:22:32,760 Ohjausmerkkijonoja, mitä nämä asiat ovat nimeltään. 449 00:22:32,760 --> 00:22:37,080 >> Mutta huomaan, että en tee minkäänlaista% s vaihdot, 450 00:22:37,080 --> 00:22:40,050 Olen vain kirjaimellisesti kytkemällä näiden muuttujien. 451 00:22:40,050 --> 00:22:45,110 Ja niin this-- mitä tapahtuisi täällä on se, että arvo $ topping-- uudelleen, 452 00:22:45,110 --> 00:22:48,390 vain sopusoinnussa mitä olemme olleet puhumme niin far-- juustoa saisi 453 00:22:48,390 --> 00:22:49,720 kytketty siellä. 454 00:22:49,720 --> 00:22:54,780 Ja $ hinta olisi arvosta riippumatta on klo pizzat, hakasulkeita, juustoa, 455 00:22:54,780 --> 00:22:56,270 joka oli 8.99. 456 00:22:56,270 --> 00:23:01,860 Ja niin tämä myös tulostaa "Koko juusto pizza maksaa $ 8.99." 457 00:23:01,860 --> 00:23:05,160 Ja kuten sanoin, voisin käyttää tulostaa täällä sijasta kaiku, 458 00:23:05,160 --> 00:23:08,040 ja toiminnallisuus on melko täsmälleen sama. 459 00:23:08,040 --> 00:23:09,660 Se tulostaa sama asia. 460 00:23:09,660 --> 00:23:12,680 >> On toinenkin tapa tehdä se, ja tämä on toinen etu 461 00:23:12,680 --> 00:23:14,710 PHP kanssa jouset. 462 00:23:14,710 --> 00:23:17,130 Voimme tehdä merkkijono ketjuttamista. 463 00:23:17,130 --> 00:23:19,660 Voisimme tehdä tämän C, liian, käyttämällä toiminto nimeltään strcat, 464 00:23:19,660 --> 00:23:21,180 mutta jälleen, jouduimme soittaa erillisiä toimintoja. 465 00:23:21,180 --> 00:23:22,640 Se oli tämä koko sotku tehdä. 466 00:23:22,640 --> 00:23:24,590 Jouduimme punta-sisällyttää string.h. 467 00:23:24,590 --> 00:23:25,780 Se oli tuotanto, eikö? 468 00:23:25,780 --> 00:23:30,070 Mutta nyt voin vain käyttää tätä piste operaattori ketjuttaa langat yhteen. 469 00:23:30,070 --> 00:23:34,910 >> Joten olen ketjuttamalla "koko" ja sitten mikä tahansa arvo $ keveiden on, 470 00:23:34,910 --> 00:23:38,860 ja sitten toinen string, "pizza kustannukset $" 471 00:23:38,860 --> 00:23:42,340 ja sitten ketjutetaan riippumatta arvo $ hinta on, 472 00:23:42,340 --> 00:23:45,670 ja sitten aivan lopussa olen tacking aikana kenoviiva n. 473 00:23:45,670 --> 00:23:47,926 Ja niin tämä olisi myös tulostaa "koko" - jälleen, 474 00:23:47,926 --> 00:23:50,550 jos me puhumme ensimmäinen osa tätä pizzat array-- 475 00:23:50,550 --> 00:23:54,710 "Koko juusto pizza maksaa $ 8.99." 476 00:23:54,710 --> 00:24:01,260 Aika, kenoviiva n, jälleen, jossa $ keveiden ja $ hinta korvaavan 477 00:24:01,260 --> 00:24:06,580 mitä olimme määritetty meidän foreach kaareen keskeinen arvo pari kartoitus. 478 00:24:06,580 --> 00:24:08,050 >> PHP voi käsitellä toimintoja. 479 00:24:08,050 --> 00:24:11,250 Toiminnot olivat eräänlainen olennainen C, kuten näimme. 480 00:24:11,250 --> 00:24:14,870 Kuten muuttujia, meidän ei tarvitse määritä palautuva funktion, 481 00:24:14,870 --> 00:24:16,350 koska se ei ole oikeastaan ​​väliä. 482 00:24:16,350 --> 00:24:18,660 Ja emme määritä tietotyypit parametreja, 483 00:24:18,660 --> 00:24:21,410 koska he eivät oikeastaan asia, kuten olemme nähneet PHP. 484 00:24:21,410 --> 00:24:24,510 Jokainen toiminto on otettu käyttöön toiminnolla avainsanan. 485 00:24:24,510 --> 00:24:27,920 Näin saimme ilmoittaa PHP, joka mitä me puhumme on funktio. 486 00:24:27,920 --> 00:24:29,720 >> Ja meillä ei tarvitse käsitellä tärkein lainkaan, 487 00:24:29,720 --> 00:24:33,690 koska tulkki, PHP tulkki, toimii ylhäältä alas, 488 00:24:33,690 --> 00:24:34,190 riippumatta. 489 00:24:34,190 --> 00:24:35,640 Jos se näkee voit tehdä funktiokutsu, se tulee 490 00:24:35,640 --> 00:24:37,850 mennä etsimään funktiokutsua, vaikka se tulee myöhemmin. 491 00:24:37,850 --> 00:24:40,360 Mutta se tulee lukea ylhäältä pohja, joten meidän ei tarvitse määrittää, 492 00:24:40,360 --> 00:24:41,500 Tässä kun aloitat. 493 00:24:41,500 --> 00:24:46,700 Aloitat linjalla 1 teidän PHP ja työskennellä alas sieltä. 494 00:24:46,700 --> 00:24:49,690 >> Joten tässä on se, miten me loisi toiminto nimeltään hard_square. 495 00:24:49,690 --> 00:24:54,100 Se ilmeisesti kestää yhden parametri, joka soitan $ x. 496 00:24:54,100 --> 00:24:58,424 Tämä toiminto on monimutkainen vain havainnollistaa eri asioita. 497 00:24:58,424 --> 00:24:59,590 Meillä on vielä paluuarvot. 498 00:24:59,590 --> 00:25:00,870 Olen käyttäen silmukka täällä. 499 00:25:00,870 --> 00:25:04,970 Mutta se on pohjimmiltaan vain, mitä tämä merkitsee vain $ x kertaa $ x. 500 00:25:04,970 --> 00:25:10,520 Mitä olen todella tekee on vain lisäämällä x 0 x kertaa tai $ x nolla $ X kertaa. 501 00:25:10,520 --> 00:25:15,850 Mutta se on tehokkaasti täsmälleen kertomista $ x kertaa $ x. 502 00:25:15,850 --> 00:25:18,700 Voin silti palauttaa arvon, tässä tapauksessa $ tulos, 503 00:25:18,700 --> 00:25:22,060 ja olen tehnyt toiminto PHP. 504 00:25:22,060 --> 00:25:24,160 >> Näin voit käyttää sitä yhteydessä. 505 00:25:24,160 --> 00:25:26,020 Joten ehkä olen sisällä joitakin PHP-tiedosto. 506 00:25:26,020 --> 00:25:29,240 Ilmoituksen sininen siellä Olen käyttänyt minun PHP eroittimille 507 00:25:29,240 --> 00:25:31,010 kulmasuljetta kysymysmerkki php. 508 00:25:31,010 --> 00:25:35,180 Välillä ne ovat kaikki PHP että haluan kirjoittaa. 509 00:25:35,180 --> 00:25:37,840 Joten olen ilmeisesti menossa get-- Aion pyytää käyttäjältä 510 00:25:37,840 --> 00:25:41,550 antaa minulle numero, myymälä, joka muuttuja, myymälä että muuttuja $ x, 511 00:25:41,550 --> 00:25:43,320 mitä he antoivat minulle. 512 00:25:43,320 --> 00:25:48,590 Sitten aion yhtyä hard_square tästä arvosta, 513 00:25:48,590 --> 00:25:50,370 ja ilmeisesti menossa tack uusi rivi 514 00:25:50,370 --> 00:25:53,590 samoin, ja sitten myöhemmin I will määritellään funktio hard_square niin 515 00:25:53,590 --> 00:25:55,550 että kun teen soittaa hard_square, 516 00:25:55,550 --> 00:25:58,160 se tietää mitä puhun. 517 00:25:58,160 --> 00:26:00,705 >> Nyt voisin myös tehdä jotain tällaista. 518 00:26:00,705 --> 00:26:02,050 Tämä on hieman erilainen. 519 00:26:02,050 --> 00:26:04,190 Se on lähes täsmälleen sama kuin mitä näimme ennen, 520 00:26:04,190 --> 00:26:08,400 paitsi sen sijaan sanoa vain $ x siellä parametri hard_square, 521 00:26:08,400 --> 00:26:11,730 Sanon $ x = 10. 522 00:26:11,730 --> 00:26:14,330 Joten tämä on esimerkki puolustava ohjelmointi, 523 00:26:14,330 --> 00:26:17,070 vartiointi ohjelmat haitallisilta käyttäjille. 524 00:26:17,070 --> 00:26:20,020 >> Tämä on yksi tapa tehdä jokin virhe tarkistamalla, että emme oikeastaan 525 00:26:20,020 --> 00:26:24,670 on kuin vaihtoehto C. Emme voi koskaan Määritä oletusarvo jotain. 526 00:26:24,670 --> 00:26:27,010 Meillä oli aina tarkistaa onko, esimerkiksi, 527 00:26:27,010 --> 00:26:30,820 jos teimme puhelun GetString, se oli kaikkein oikein jos heti kun 528 00:26:30,820 --> 00:26:33,300 tarkastetaan, että pyysimme onko merkkijono 529 00:26:33,300 --> 00:26:35,504 että käyttäjä antoi meille ei ole yhtä suuri kuin null, 530 00:26:35,504 --> 00:26:37,920 koska emme halua aloittaa kanssa tyhjä merkkijono. 531 00:26:37,920 --> 00:26:39,670 >> Täällä, tämä on tapa varoa, että. 532 00:26:39,670 --> 00:26:43,480 Jos käyttäjä ei anna meille jotain jotenkin, mitä aiomme tehdä? 533 00:26:43,480 --> 00:26:46,080 No, me vain sanoa mitä he eivät anna meille, 534 00:26:46,080 --> 00:26:47,705 olemme juuri menossa plug 10 sijaan. 535 00:26:47,705 --> 00:26:52,030 Joten jos ne eivät anna meille arvo, vain käyttää 10 oletuksena. Ja niin täällä, 536 00:26:52,030 --> 00:26:53,940 Huomaan, että olen tekemässä soittaa hard_square, 537 00:26:53,940 --> 00:26:55,980 mutta ei ole nopea käyttäjälle, eikö? 538 00:26:55,980 --> 00:26:57,540 Olen juuri tekemässä tyhjä puhelun. 539 00:26:57,540 --> 00:27:00,860 >> Mutta minun toiminto hard_square odottaa parametri. 540 00:27:00,860 --> 00:27:02,222 Mitä tämä tulee tulostaa? 541 00:27:02,222 --> 00:27:03,680 Se tulee tulostaa 100, eikö? 542 00:27:03,680 --> 00:27:05,720 Koska käyttäjä ei anna minulle mitään. 543 00:27:05,720 --> 00:27:08,970 Ja niin olen juuri menossa olettaa että 10-- 10 on oletusarvo. 544 00:27:08,970 --> 00:27:13,760 Ja niin tämä tulostaa ulos 100 omalla rivillään. 545 00:27:13,760 --> 00:27:16,390 >> PHP-tiedostot eivät tarvitse olla vain yksi tiedosto. 546 00:27:16,390 --> 00:27:19,480 Voit yhdistää useita tiedostoja yhteen, aivan kuten voit C. tavalla 547 00:27:19,480 --> 00:27:24,330 teimme että C oli tyypillisesti tehdä # include saada header tiedostoja vedetään. 548 00:27:24,330 --> 00:27:26,180 Emme tee sitä PHP. 549 00:27:26,180 --> 00:27:29,110 Teemme jotain kutsutaan require_once. 550 00:27:29,110 --> 00:27:33,360 Ja sitten on tämä koko asia, mitä tämä __dir__? 551 00:27:33,360 --> 00:27:36,510 Se on vain erityinen muuttuja, tai erityisiä vakio, 552 00:27:36,510 --> 00:27:39,030 todella, joka määrittää mitä nykyinen hakemisto on. 553 00:27:39,030 --> 00:27:41,320 Ja niin se tulee näyttämään nykyisessä hakemistossa 554 00:27:41,320 --> 00:27:44,900 tiedostoa nimeltä cs50.php tässä esimerkissä täällä, 555 00:27:44,900 --> 00:27:50,490 ja se tulee kiinni että tiedosto yläreunassa PHP-ohjelma, 556 00:27:50,490 --> 00:27:56,980 olettaen, että laitat vaatia kerran linja yläreunassa PHP tiedoston. 557 00:27:56,980 --> 00:28:01,474 >> Joten PHP käytetään pääasiassa, mutta ei yksinomaan käytetty, 558 00:28:01,474 --> 00:28:03,140 kuin kieli web-pohjainen ohjelmointi. 559 00:28:03,140 --> 00:28:05,270 Se on todella, miten se tuli olla. 560 00:28:05,270 --> 00:28:06,980 Mutta se on täynnä kieli, kuten olemme nähneet. 561 00:28:06,980 --> 00:28:10,105 Olemme nähneet jokseenkin kaikki asiat että se voi tehdä on samanlainen kuin C, 562 00:28:10,105 --> 00:28:13,290 ja se voi tehdä pahus paljon enemmän. 563 00:28:13,290 --> 00:28:16,950 >> Mutta koska se on täynnä kieltä ja me voi tehdä komentoriviltä ohjelmointi se. 564 00:28:16,950 --> 00:28:18,630 Voimme ajaa komentoriviltä ohjelmia. 565 00:28:18,630 --> 00:28:22,580 Kaikki mitä tarvitaan komentoa line-ohjelma, joka on kirjoitettu PHP 566 00:28:22,580 --> 00:28:24,260 on, että sinulla on PHP tulkki. 567 00:28:24,260 --> 00:28:27,460 Joten se on eräänlainen analoginen ottaa kääntäjä koneellesi 568 00:28:27,460 --> 00:28:31,100 jos haluat kääntää C-koodia muuttaa sen ohjelmatiedostoja. 569 00:28:31,100 --> 00:28:33,810 Sinun täytyy olla PHP tulkki että on olemassa järjestelmä 570 00:28:33,810 --> 00:28:37,330 jotta voit tulkita PHP tiedostot. 571 00:28:37,330 --> 00:28:40,370 >> Olettaen et, ja yleensä tämä tulkki kutsutaan PHP, 572 00:28:40,370 --> 00:28:44,300 ja se on yleensä kytköksissä eniten latauksia tai laitoksia PHP 573 00:28:44,300 --> 00:28:47,430 että voit saada verkossa, ja varmasti nimi PHP tulkki 574 00:28:47,430 --> 00:28:49,550 meillä on CS50, IDE. 575 00:28:49,550 --> 00:28:51,819 Kaikki sinun on tyyppiä php tiedosto. 576 00:28:51,819 --> 00:28:53,610 Ja mitä ohjelman aikoo tehdä on se 577 00:28:53,610 --> 00:28:55,360 menossa ajaa läpi tulkki, se on 578 00:28:55,360 --> 00:28:58,040 menossa sivuuttaa kaikki, mikä ei välillä kyseessä mark-- 579 00:28:58,040 --> 00:29:03,160 tai, kulmasuljetta kysymysmerkki php, PHP eroittimille ja tulostaa sen, 580 00:29:03,160 --> 00:29:07,660 ja se tulkitsee ja suorittaa koodi sisällä PHP delimiters. 581 00:29:07,660 --> 00:29:12,850 >> Joten pop yli CS50 IDE ja vilkaista pari PHP tiedostot, 582 00:29:12,850 --> 00:29:19,850 käynnissä pari PHP tiedostot, vuonna komentorivin käyttöliittymän CS50 IDE. 583 00:29:19,850 --> 00:29:22,100 Joten tässä olemme CS50 IDE, ja olen ottanut vapauden 584 00:29:22,100 --> 00:29:25,800 avaamisesta tiedosto nimeltä hello1.php. 585 00:29:25,800 --> 00:29:29,920 Ja ilmeisesti, sisältö tiedosto on vain PHP rajoittimien siellä, 586 00:29:29,920 --> 00:29:32,220 ja välillä, echo ("Hei, maailma"). 587 00:29:32,220 --> 00:29:34,710 Tämä on melko yksinkertainen PHP-ohjelma. 588 00:29:34,710 --> 00:29:37,670 Olen juuri menossa selaa minun pääteikkunaa täällä, 589 00:29:37,670 --> 00:29:44,320 ja aion kirjoittaa php hello1.php, Enter. 590 00:29:44,320 --> 00:29:44,950 Hei maailma. 591 00:29:44,950 --> 00:29:48,110 Se on luultavasti mitä olimme odottanut sitä tehdä, eikö? 592 00:29:48,110 --> 00:29:51,140 >> Mennään ylös ja ottaa toinen tarkastella ohjelman. 593 00:29:51,140 --> 00:29:52,924 hello2.php. 594 00:29:52,924 --> 00:29:55,090 Melko sama asia, ei paljon täällä. 595 00:29:55,090 --> 00:29:57,190 Tällä kertaa kuitenkin, aion pyytää käyttäjä antaa minulle niiden nimet. 596 00:29:57,190 --> 00:29:59,290 Käytän että readline toimintoa uudelleen. 597 00:29:59,290 --> 00:30:01,340 $ Nimi = readline. 598 00:30:01,340 --> 00:30:03,070 Se on nopea, "Mikä on nimesi?" 599 00:30:03,070 --> 00:30:04,880 >> Ilmeisesti olen tulostus se omalla rivillään. 600 00:30:04,880 --> 00:30:07,220 Ja sitten, joten linja alla että on nopea 601 00:30:07,220 --> 00:30:08,750 jossa käyttäjä voi syöttää heidän nimensä. 602 00:30:08,750 --> 00:30:12,030 Ja sitten Käytän hieman muuttuja välikysymykseen täällä linja 3 603 00:30:12,030 --> 00:30:14,780 tulostaa "Hei" ja mitä käyttäjä kirjoittaa. 604 00:30:14,780 --> 00:30:22,040 Joten tämä on analoginen sanoen, Hei, pilkku,% s jos käytimme printf C. 605 00:30:22,040 --> 00:30:24,910 >> Joten mennään ja tulkita tätä ohjelmaa. 606 00:30:24,910 --> 00:30:27,400 Joten jälleen, minä selaa minun pääteikkuna. 607 00:30:27,400 --> 00:30:29,070 php hello2.php. 608 00:30:29,070 --> 00:30:31,920 609 00:30:31,920 --> 00:30:33,820 Mikä on nimesi? 610 00:30:33,820 --> 00:30:35,490 Doug. 611 00:30:35,490 --> 00:30:36,526 Hei, Doug. 612 00:30:36,526 --> 00:30:39,440 Minulla on myös toinen tiedosto nimeltä hello3.php. 613 00:30:39,440 --> 00:30:42,850 Aion tyhjentää näyttö Ohjaus L, 614 00:30:42,850 --> 00:30:46,210 ja aion toteuttaa sitä. 615 00:30:46,210 --> 00:30:47,640 Mikä on nimesi? 616 00:30:47,640 --> 00:30:49,020 Doug. 617 00:30:49,020 --> 00:30:49,780 Hei, Doug. 618 00:30:49,780 --> 00:30:56,540 Joten käyttäytyminen on identtinen hello2.php, mutta miksi se hello3.php? 619 00:30:56,540 --> 00:30:58,040 >> No, tässä on ero. 620 00:30:58,040 --> 00:31:00,620 Tässä tapauksessa ilmoituksen että linjalla 1 täällä, 621 00:31:00,620 --> 00:31:04,270 Minulla on jotain, joka ei ole välillä PHP erottimet. 622 00:31:04,270 --> 00:31:07,760 Olen vain tulostus out-- tai I juuri kirjoittanut, "Mikä on nimesi?" 623 00:31:07,760 --> 00:31:12,060 Kun PHP tulkki näkee tämän, se ei ole aavistustakaan miten sitä tulkitaan PHP, 624 00:31:12,060 --> 00:31:15,060 ja niin sen sijaan ei ole, se juuri menossa sylkeä se pois. 625 00:31:15,060 --> 00:31:19,010 >> Niin huomaa rivillä 3 nyt, minun kutsu readline, ei ole nopea enää. 626 00:31:19,010 --> 00:31:21,750 Olen vain todella menossa to-- kun PHP tulkki näkee tämän, 627 00:31:21,750 --> 00:31:23,400 se tulee tulostaa "Mikä on nimesi?" 628 00:31:23,400 --> 00:31:25,941 Sitten se näkee, OH, OK, here's-- kaikki muu tulee olemaan 629 00:31:25,941 --> 00:31:29,970 tulkita PHP, joten siksi tämä toimii. 630 00:31:29,970 --> 00:31:34,990 Minulla ei tarvitse välttämättä kysymään käyttäjä to-- sisällä readline, 631 00:31:34,990 --> 00:31:37,490 Voin vain sen ulkopuolella PHP rajoittimien 632 00:31:37,490 --> 00:31:41,490 ja mahdollistaa tulkki vain tulostaa sen minulle. 633 00:31:41,490 --> 00:31:45,364 >> Joten et itse vain on yksi joukko PHP rajoittimien 634 00:31:45,364 --> 00:31:46,030 ohjelmaasi. 635 00:31:46,030 --> 00:31:49,887 Voit itse olla useita niistä, avaamalla ja sulkemalla ne tarvittaessa. 636 00:31:49,887 --> 00:31:51,720 Joten katsomaan on pari ohjelmien 637 00:31:51,720 --> 00:31:55,070 vuonna CS50 IDE jossa havainnollistaa tätä ajatusta 638 00:31:55,070 --> 00:31:58,376 useita sarjaa rajattu PHP. 639 00:31:58,376 --> 00:32:02,010 >> OK, joten olen avannut tiedosto tässä kutsutaan add1.php. 640 00:32:02,010 --> 00:32:03,390 Ja huomaa, mitä täällä tapahtuu. 641 00:32:03,390 --> 00:32:08,077 Aivan kuten ennen, minulla on yksi PHP joukko delimiters. 642 00:32:08,077 --> 00:32:10,660 Aion tulostaa viesti, "Anna minulle numero." 643 00:32:10,660 --> 00:32:13,394 Sitten aion lukea linja ja tallentaa sen muuttujaan $ num1. 644 00:32:13,394 --> 00:32:14,810 Sitten aion tulostaa uudelleen. 645 00:32:14,810 --> 00:32:16,310 Anna minulle toinen numero. 646 00:32:16,310 --> 00:32:20,450 Lue linjan käyttäjä, myymälä mitä ne kirjoitetaan sisään $ num2. 647 00:32:20,450 --> 00:32:23,980 Lisää ne yhteen ja tallentaa että johtaa muuttuja nimeltä $ summa, 648 00:32:23,980 --> 00:32:26,180 ja sitten tulostaa, " summa nämä kaksi lukua 649 00:32:26,180 --> 00:32:29,254 on "ja sitten tehdä välikysymys jstk siellä muuttuja $ summa. 650 00:32:29,254 --> 00:32:31,170 Joten vain ajaa tätä kautta tulkki 651 00:32:31,170 --> 00:32:33,720 vahvistaa, että tämä on mitä odotamme. 652 00:32:33,720 --> 00:32:37,540 php add1.php. 653 00:32:37,540 --> 00:32:38,665 Antakaa minulle numero 3. 654 00:32:38,665 --> 00:32:40,410 Antakaa minulle toinen luku, 4. 655 00:32:40,410 --> 00:32:43,370 Summa nämä kaksi lukua on 7. 656 00:32:43,370 --> 00:32:45,030 Se on 3 ja 4. 657 00:32:45,030 --> 00:32:45,530 OK? 658 00:32:45,530 --> 00:32:47,770 Joten ei mitään hirveän fancy siellä. 659 00:32:47,770 --> 00:32:51,080 >> Ja Nyt avata add2.php. 660 00:32:51,080 --> 00:32:54,460 Täällä minulla pari PHP rajattu asetetaan siellä, eikö? 661 00:32:54,460 --> 00:32:59,107 Linjat 1, 3-- linjat 1 ja 3 ei ole PHP erottimia. 662 00:32:59,107 --> 00:33:00,940 Joten kun tulkki näkee heidät, se on vain 663 00:33:00,940 --> 00:33:03,220 menossa sylkäistä tarkalleen mitä olen kirjoittanut siellä. 664 00:33:03,220 --> 00:33:05,011 Niin siitähän minä olen tekee kaikki minun kehotukset. 665 00:33:05,011 --> 00:33:11,220 Riveillä 2 ja 4, näemme hyvin tuttu $? php tavallaan eroittimille 666 00:33:11,220 --> 00:33:15,210 joten nämä kaksi riviä ovat menossa suorittaa PHP. 667 00:33:15,210 --> 00:33:18,270 Ja sitten rivi 5, minulla on tämä outo juttu täällä, eikö? 668 00:33:18,270 --> 00:33:20,480 Tämä kulma kiinnike kysymysmerkki yhtäläisyysmerkki. 669 00:33:20,480 --> 00:33:22,660 Minä jopa suurentaa vähän pidemmälle. 670 00:33:22,660 --> 00:33:29,270 Näet tämä on mitä olen puhumme oikeassa, tämä $? =. 671 00:33:29,270 --> 00:33:33,420 >> Osoittautuu, että se on niin yleistä, että syystä, että avaamme joukko PHP 672 00:33:33,420 --> 00:33:36,055 erottimia on tulostaa arvo. 673 00:33:36,055 --> 00:33:37,430 Ja siinä kaikki aiomme tehdä. 674 00:33:37,430 --> 00:33:39,220 Mutta on myös lyhenne tästä. 675 00:33:39,220 --> 00:33:46,490 $? = On PHP lyhenteenä sanomalla jotain $? php echo summa 676 00:33:46,490 --> 00:33:48,350 sekä num1 ja num2. 677 00:33:48,350 --> 00:33:51,900 Joten tämä on vain yksi lyhenne tästä. 678 00:33:51,900 --> 00:33:55,550 >> Joten jos en suorita tämä ohjelma, php add2.php. 679 00:33:55,550 --> 00:33:57,530 Minä zoom alas hieman. 680 00:33:57,530 --> 00:33:59,000 Antakaa minulle numero 4. 681 00:33:59,000 --> 00:34:00,350 Antakaa minulle toinen numero. 682 00:34:00,350 --> 00:34:04,650 Ja koska en oikeastaan ​​välitä tietotyyppejä PHP, voin sanoa 4.8. 683 00:34:04,650 --> 00:34:07,160 Summa nämä kaksi lukua on 8.8. 684 00:34:07,160 --> 00:34:10,179 Tämä toiminto käyttäytyy aika paljon täsmälleen sama kuin odotamme, 685 00:34:10,179 --> 00:34:10,989 yhtä hyvin. 686 00:34:10,989 --> 00:34:13,114 Ja minulla on vielä yksi avattu täällä kutsutaan dice.php. 687 00:34:13,114 --> 00:34:25,625 688 00:34:25,625 --> 00:34:26,250 Kokeile tätä uudelleen. 689 00:34:26,250 --> 00:34:29,429 690 00:34:29,429 --> 00:34:33,280 Minulla on vielä yksi täällä kutsutaan dice1.php, joka myös, katso, 691 00:34:33,280 --> 00:34:37,440 on että kulmasulje kysymys merkitse yhtäläisyysmerkki merkintätapa siellä, 692 00:34:37,440 --> 00:34:40,659 mutta huomaa, että tässä tapauksessa olen kutsumalla funktiota randia, joka kuten 693 00:34:40,659 --> 00:34:42,790 voisi odottaa generoi satunnaisluvun. 694 00:34:42,790 --> 00:34:46,889 "Sinä vieritti" ja se tulee laskea joitakin satunnaisia ​​numero, mod 6 + 695 00:34:46,889 --> 00:34:47,389 1. 696 00:34:47,389 --> 00:34:49,989 Niin että annan minulle numero välillä 1-6. 697 00:34:49,989 --> 00:34:53,040 >> Muista, että mod 6 antaisi minulle numero on välillä 0-5, 698 00:34:53,040 --> 00:34:56,630 mutta jos olen simuloida noppaa rullat, joka on mitä teen täällä, 699 00:34:56,630 --> 00:35:00,040 En halua näitä noppia mennä 0 5, haluan noppaa, jotka menevät 1-6. 700 00:35:00,040 --> 00:35:02,800 Ja niin tämä on tapa saada minua välillä 1-6. 701 00:35:02,800 --> 00:35:04,720 Teen tämän kahdesti. 702 00:35:04,720 --> 00:35:08,630 Ilmeisesti olen liikkuva kahta noppaa tässä ohjelmassa. 703 00:35:08,630 --> 00:35:15,210 >> Niin minä tyhjentää näytön, ja minä teen php dice1.php. 704 00:35:15,210 --> 00:35:16,640 Voit rullattu 4 ja 2. 705 00:35:16,640 --> 00:35:19,156 Ja jos juoksen ohjelma uudestaan, rullattu 5 ja 5. 706 00:35:19,156 --> 00:35:21,780 Joten joka kerta kun käynnistät ohjelman, Saan eri numerot, 707 00:35:21,780 --> 00:35:24,280 koska joka kerta, kun teen niin, se alkaa yli. 708 00:35:24,280 --> 00:35:27,250 Se tulee luoda uusi sarja satunnaisia ​​numeroita minulle. 709 00:35:27,250 --> 00:35:29,790 >> Joten jos olemme tottuneet käynnissä olevat ohjelmat C, 710 00:35:29,790 --> 00:35:32,520 olemme tottuneet kirjoittamalla ./ ohjelman nimeä, eikö? 711 00:35:32,520 --> 00:35:35,090 Näin olemme tehneet kaikki meidän ohjelmia C toistaiseksi. 712 00:35:35,090 --> 00:35:37,555 Voimme tehdä tämän PHP samoin lisäämällä jotain kutsutaan 713 00:35:37,555 --> 00:35:40,026 roska alkuun meidän PHP-tiedosto. 714 00:35:40,026 --> 00:35:41,400 Tiedän, että se on tavallaan typerä sana. 715 00:35:41,400 --> 00:35:44,540 Se on lyhyt hash Bang. 716 00:35:44,540 --> 00:35:46,300 Se on ensimmäinen kaksi merkkiä siellä. 717 00:35:46,300 --> 00:35:50,030 Muista kutsumme huutomerkki usein bang tietotekniikassa. 718 00:35:50,030 --> 00:35:51,690 Se saattaa myös olla teräviä Bang. 719 00:35:51,690 --> 00:35:53,273 On pari tapaa tulkita sitä. 720 00:35:53,273 --> 00:35:57,320 Mutta se on pohjimmiltaan erityinen eräänlainen komento, että PHP tulkki 721 00:35:57,320 --> 00:36:00,160 ymmärtää niin, OH, haluan voit suorittaa tämän ohjelman, 722 00:36:00,160 --> 00:36:05,250 joka on ilmeisesti / käyttäjä / bin / php, joka on todella jossa PHP tulkki 723 00:36:05,250 --> 00:36:08,590 nimenomaan elää meidän järjestelmä. 724 00:36:08,590 --> 00:36:12,530 Joten it's-- mitä tapahtuu tässä tulkki ymmärtää, OH, 725 00:36:12,530 --> 00:36:17,270 Olen ilmeisesti tarkoitus käyttää tähän ohjelmaan suorittaa tämän tiedoston. 726 00:36:17,270 --> 00:36:20,010 Ja niin se auttaa ohitetaan vaihe 727 00:36:20,010 --> 00:36:22,979 ottaa sanoa php something.php. 728 00:36:22,979 --> 00:36:25,020 Siellä on yksi muiden saalis täällä, joka on että jos me 729 00:36:25,020 --> 00:36:27,320 haluamme ohjelmia toimi odotetulla tavalla, me 730 00:36:27,320 --> 00:36:30,220 täytyy tehdä jotain kutsutaan tiedosto lupaa muutosta. 731 00:36:30,220 --> 00:36:33,380 Ja me go-- ja puhumme hieman hieman enemmän tiedostojen lupaa muutoksia 732 00:36:33,380 --> 00:36:37,550 meidän video MVC, mutta riittää kun sanoa, että tämä on mitä sinun tarvitsee tehdä 733 00:36:37,550 --> 00:36:42,760 jotta teidän Php-tiedostoja executable. 734 00:36:42,760 --> 00:36:49,330 Joten katsomaan tätä meidän lopullinen esimerkki ohi CS50 IDE. 735 00:36:49,330 --> 00:36:53,910 >> Joten täällä IDE Minulla on kaksi tiedostoja tässä PHP hakemiston, jotka eivät vaikuta olevan 736 00:36:53,910 --> 00:36:55,310 nimeltään .php. 737 00:36:55,310 --> 00:36:58,170 Minulla on toiminto nimeltään add-- Minulla on tiedosto nimeltä ADD3 738 00:36:58,170 --> 00:37:00,650 ja tiedosto nimeltä dice2. 739 00:37:00,650 --> 00:37:03,680 Joten ottaa nopeasti etsiä ja avata ADD3. 740 00:37:03,680 --> 00:37:08,300 Ja kuten näette, alussa minun tiedosto Olen tämän roska, eikö? 741 00:37:08,300 --> 00:37:11,420 Tämä hash huutomerkki. 742 00:37:11,420 --> 00:37:15,115 Nyt, luultavasti myös ehkä huomata, että jostain syystä, 743 00:37:15,115 --> 00:37:16,990 Minulla ei ole mitään syntaksin korostaa enää, 744 00:37:16,990 --> 00:37:20,198 ja tämä on mitä viittasin aikaisemmin, oli se, että jos en nimeä minun tiedosto 745 00:37:20,198 --> 00:37:23,040 Php, minulla ei ole hyötyä on syntaksikorostuksen enää. 746 00:37:23,040 --> 00:37:26,220 Tämä tiedosto on vain kutsutaan ADD3. 747 00:37:26,220 --> 00:37:30,960 Jotta voin käyttää sitä myöhemmin kanssa ./ ADD3 eikä ./ add3.php. 748 00:37:30,960 --> 00:37:33,680 >> Joten reason-- se on edelleen hieno, se on edelleen voimassa PHP, 749 00:37:33,680 --> 00:37:37,000 mutta se ei ole syntaksin korostettu, koska tätä tiedostoa ei kutsuta something.php. 750 00:37:37,000 --> 00:37:41,580 Se on ainoa todellinen ero täällä, ja roska. 751 00:37:41,580 --> 00:37:45,170 Joten katsotaan mitä tapahtuu, kun Yritän ja suorita tämä ohjelma. 752 00:37:45,170 --> 00:37:50,780 ./ ADD3, aivan kuten olisin C. Bash. 753 00:37:50,780 --> 00:37:53,190 ./ ADD3 lupa evätään. 754 00:37:53,190 --> 00:37:55,390 Tämä on mitä aiot nähdä, jos unohdat 755 00:37:55,390 --> 00:37:59,280 käyttää chmod komentoa muuttaa käyttöoikeuksia tiedoston. 756 00:37:59,280 --> 00:38:03,845 >> Kuten on käynyt ilmi, säännöllinen PHP tiedostoja voi vain panna täytäntöön. 757 00:38:03,845 --> 00:38:06,970 Niitä voidaan tulkita, mutta olemme tehdä jotain hieman erilaista täällä. 758 00:38:06,970 --> 00:38:07,761 Me suorittamalla sen. 759 00:38:07,761 --> 00:38:12,970 Ja niin minun täytyy lisätä lupaa toteutuksen, chmod + x ADD3. 760 00:38:12,970 --> 00:38:15,680 Sitten voin sanoa ./ ADD3. 761 00:38:15,680 --> 00:38:16,860 Antakaa minulle numero. 762 00:38:16,860 --> 00:38:18,060 5, 6. 763 00:38:18,060 --> 00:38:20,490 Summa nämä kaksi lukua 11. 764 00:38:20,490 --> 00:38:26,530 >> Samoin olen jo chmoded dice2, joten voin vain kirjoittaa ./ dice2, 765 00:38:26,530 --> 00:38:31,260 rullattu 1 ja 1, sinua rullattu 5 ja 4, ja niin edelleen. 766 00:38:31,260 --> 00:38:33,680 >> Niin se on aika paljon Ajatus PHP syntaksi, eikö? 767 00:38:33,680 --> 00:38:35,221 Siellä on paljon saada läpi, tiedän. 768 00:38:35,221 --> 00:38:39,160 Mutta toivottavasti olet nähnyt nyt että PHP ei ole kovinkaan erilainen kuin C 769 00:38:39,160 --> 00:38:43,670 ja todella antaa meille mahdollisuuden ottaa asioita pykälän tai kaksi. 770 00:38:43,670 --> 00:38:48,230 Emme oikeastaan ​​tarvitse huolehtia liian paljon about-- emme oikeastaan 771 00:38:48,230 --> 00:38:51,605 tarvitse huolehtia liikaa matalan tason tiedot me 772 00:38:51,605 --> 00:38:52,980 oli murehtia C, eikö? 773 00:38:52,980 --> 00:38:56,170 Voimme keskittyä korkeamman tason kamaa, että PHP 774 00:38:56,170 --> 00:39:01,090 antaa meille mahdollisuuden tehdä ja kestää selvänä, että se toimii meille. 775 00:39:01,090 --> 00:39:04,350 Joten se antaa meille mahdollisuuden nyt, siirrytään C PHP, 776 00:39:04,350 --> 00:39:08,280 tehdä ohjelmia, jotka ovat paljon enemmän monimutkainen ja ehkä paljon vankempi. 777 00:39:08,280 --> 00:39:13,070 >> Joten Toivottavasti sinulla on hauskaa työ PHP, ja olen Doug Lloyd. 778 00:39:13,070 --> 00:39:15,050 Tämä on CS50. 779 00:39:15,050 --> 00:39:17,637