1 00:00:00,000 --> 00:00:02,000 [Powered by Google Translate] [8 §] [vähemmän mukavaksi] 2 00:00:02,000 --> 00:00:04,000 [Nate Hardison] [Harvardin yliopisto] 3 00:00:04,000 --> 00:00:08,000 [Tämä on CS50.] [CS50.TV] 4 00:00:08,000 --> 00:00:11,000 >> Tervetuloa toiseksi viimeinen kappale. 5 00:00:11,000 --> 00:00:13,000 Tällä viikolla aiomme puhua PHP, ja sitten ensi viikolla 6 00:00:13,000 --> 00:00:17,000 teemme hieman arvostelu Quiz 1. 7 00:00:17,000 --> 00:00:20,000 Aiomme aloittaa sivulla 3 ongelman asettaa pakkaus, 8 00:00:20,000 --> 00:00:28,000 ja me työn kautta osa kysymyksistä melko nopeasti. 9 00:00:28,000 --> 00:00:34,000 Sivulla 3, alamme puhua tästä eroa C ja PHP 10 00:00:34,000 --> 00:00:38,000 siinä mielessä, että PHP on dynaamisesti kirjoitettu kieli, 11 00:00:38,000 --> 00:00:42,000 kun taas C on staattisesti kirjoitetaan, 12 00:00:42,000 --> 00:00:46,000 ja on joku todella nopeasti tehdä mitään koodaus jotain PHP 13 00:00:46,000 --> 00:00:51,000 tai Python tai Ruby ennen JavaScript? 14 00:00:51,000 --> 00:00:53,000 Täysin uutta? Okei. 15 00:00:53,000 --> 00:00:56,000 >> Kaikki nämä kielet juuri mainitsemani 16 00:00:56,000 --> 00:01:01,000 ovat hyvin erilaisia ​​kieliä kuten C-ja C + + ja Java 17 00:01:01,000 --> 00:01:04,000 siinä mielessä, että kun julistaa muuttuja sinun ei tarvitse ilmoittaa 18 00:01:04,000 --> 00:01:09,000 millainen muuttuja on, niin C olimme jumissa ottaa aina sanoa 19 00:01:09,000 --> 00:01:13,000 Tämä tulee olemaan int muuttuja, tai tämä tulee olemaan char * muuttuja, 20 00:01:13,000 --> 00:01:16,000 kun taas PHP, Python, Ruby, 21 00:01:16,000 --> 00:01:20,000 kanssa paljon näistä enemmän nykykielten sinun ei tarvitse tehdä sitä ollenkaan. 22 00:01:20,000 --> 00:01:24,000 Juuri julistaa muuttuja, ja kun kyseessä on PHP 23 00:01:24,000 --> 00:01:28,000 te julistaa, että se muuttuja edeltävällä se $ merkki, 24 00:01:28,000 --> 00:01:35,000 ja sitten tyypin muuttujan määritetään arvosta riippumatta se pitelee, 25 00:01:35,000 --> 00:01:38,000 joka on eräänlainen jäähtyä. 26 00:01:38,000 --> 00:01:44,000 Leikkiä tällä vähän, meillä on näyte PHP-koodin täällä 27 00:01:44,000 --> 00:01:47,000 välillä alku-ja. 28 00:01:47,000 --> 00:01:53,000 Käytämme tätä ikään kuin HTML siinä mielessä, että 29 00:01:53,000 --> 00:01:56,000 meillä nämä kulmaraudat täällä avata ja sulkea. 30 00:01:56,000 --> 00:01:58,000 Näet HTML. 31 00:01:58,000 --> 00:02:03,000 Näet samanlaista syntaksia XML liikaa. 32 00:02:03,000 --> 00:02:06,000 >> Tämä osoittaa alussa PHP lohkoa. 33 00:02:06,000 --> 00:02:09,000 Tämä? Php on nimenomaan PHP. 34 00:02:09,000 --> 00:02:16,000 Suljemme kaiken?> Samoin. 35 00:02:16,000 --> 00:02:22,000 Katsotaanpa avata tiedoston myös laitteesta mitä haluat. 36 00:02:22,000 --> 00:02:25,000 Tässä paketissa sanotaan soittaa dynamic.php. 37 00:02:25,000 --> 00:02:29,000 Todellisuudessa voit kutsua sitä mitä haluat, mutta tiedoston nimi tulee esille 38 00:02:29,000 --> 00:02:34,000 ja on tärkeää myöhemmin, joten vain muistaa mitä te kutsutte sitä. 39 00:02:34,000 --> 00:02:36,000 Aion siirtyä laitteen 40 00:02:36,000 --> 00:02:43,000 ja aion tehdä hakemiston 41 00:02:43,000 --> 00:02:48,000 9 § Uskon me olemme nyt. 42 00:02:48,000 --> 00:02:51,000 Ja me mennä 9 §, 43 00:02:51,000 --> 00:02:54,000 ja aion käyttää gedit. 44 00:02:54,000 --> 00:02:59,000 Katsotaanpa, gedit ja aion soittaa kaivoksen dynamic.php. 45 00:02:59,000 --> 00:03:03,000 Boom. 46 00:03:03,000 --> 00:03:06,000 Sisällä dynamic.php, koska tämä on PHP tiedosto 47 00:03:06,000 --> 00:03:09,000 ja haluan ajaa tätä kautta PHP tulkin 48 00:03:09,000 --> 00:03:12,000 Minun täytyy aloittaa kaiken pois näiden avoimet koodit, 49 00:03:12,000 --> 00:03:17,000 joten aion aloittaa ne heti, 50 00:03:17,000 --> 00:03:23,000 antaa itselleni vähän tilaa välillä tunnisteet, 51 00:03:23,000 --> 00:03:26,000 ja sitten kohta tämän harjoituksen oli leikkiä 52 00:03:26,000 --> 00:03:34,000 Tämä toiminto nimeltään getType, joten getType, tämä toiminto täällä. 53 00:03:34,000 --> 00:03:38,000 >> Huomaa, että ei ole alaviivalla tai tila-tai yhdysmerkki tai jotain sellaista 54 00:03:38,000 --> 00:03:42,000 erottamalla 2 sanaa, saada ja kirjoita vain yksi sana kokonaan. 55 00:03:42,000 --> 00:03:46,000 Mutta mitä tämä tekee on, jos olen kulkea muuttujan getType, 56 00:03:46,000 --> 00:03:51,000 sano $ var tai $ x, 57 00:03:51,000 --> 00:03:55,000 Tämä kertoo minulle eräänlainen vuonna virheenkorjaus muodossa 58 00:03:55,000 --> 00:03:59,000 Mikä nimi se tyyppi on. 59 00:03:59,000 --> 00:04:03,000 Aiomme kokeilla täällä. 60 00:04:03,000 --> 00:04:07,000 Erityisesti jos muistella PSET spec 61 00:04:07,000 --> 00:04:11,000 meillä muutama eri koodirivillä täältä. 62 00:04:11,000 --> 00:04:16,000 Ensimmäisellä rivillä koodia me alustaa tämän muuttujan $ var- 63 00:04:16,000 --> 00:04:21,000 olla yhtä suuri kuin 7, ja sitten meillä on tämä printf linjaa 64 00:04:21,000 --> 00:04:25,000 joka sanoo hei, printf var on tyhjä. 65 00:04:25,000 --> 00:04:29,000 Printf on yksi monista tavoista, joilla voimme tulostaa asioita PHP. 66 00:04:29,000 --> 00:04:33,000 Usein näet Kaiutustoiminto sijasta käytetään printf, 67 00:04:33,000 --> 00:04:40,000 mutta printf olemme kaikki tuttuja jotka on koodaus C aikana. 68 00:04:40,000 --> 00:04:42,000 Mitä voit itse tehdä on katsotaanpa kopioi ja liitä teoksia. 69 00:04:42,000 --> 00:04:46,000 Aion antaa tämän kokeilla. 70 00:04:46,000 --> 00:04:52,000 Menemme takaisin päälle laitteeseen. 71 00:04:52,000 --> 00:05:00,000 Okei, ja siellä mennään. 72 00:05:00,000 --> 00:05:05,000 Ja väli on hieman outoja, mutta tässä mennään. 73 00:05:05,000 --> 00:05:08,000 Meillä tätä koodia tänne. 74 00:05:08,000 --> 00:05:11,000 >> [Student] Eikö ole hyvä tyyli välilehti sitä? 75 00:05:11,000 --> 00:05:13,000 Anteeksi? 76 00:05:13,000 --> 00:05:15,000 [Student] Onko tavanomaista välilehti on? 77 00:05:15,000 --> 00:05:21,000 Oikea, joten Sam kysyy onko yleissopimuksen välilehti sitä tai ei. 78 00:05:21,000 --> 00:05:23,000 Tyypillisesti kyllä. 79 00:05:23,000 --> 00:05:26,000 Tässä tapauksessa olen päättänyt olla. 80 00:05:26,000 --> 00:05:33,000 Oikeasti, näet eri asioita eri ohjelmoijia. 81 00:05:33,000 --> 00:05:40,000 PHP tyypillisesti käytetään usein yhdessä HTML 82 00:05:40,000 --> 00:05:45,000 ja muita kieliä, joten joskus tulostus näyttää hieman funky 83 00:05:45,000 --> 00:05:50,000 jos luetelmakohta sisällä PHP alku ja loppu tageja. 84 00:05:50,000 --> 00:05:53,000 Se oikeastaan ​​riippuu. 85 00:05:53,000 --> 00:05:56,000 Tässä tapauksessa kopioi ja liitä ei liitä välilehdet minulle, 86 00:05:56,000 --> 00:06:02,000 mutta se varmasti ei, kuten sanoit, on selkeytetty. 87 00:06:02,000 --> 00:06:06,000 Okei, jos tallennat tämän koodin dynamic.php 88 00:06:06,000 --> 00:06:10,000 niin mitä voit tehdä on astunut alas teidän pääteikkuna missä olen oikeassa tänne 89 00:06:10,000 --> 00:06:17,000 in gedit, ja tehdä vastaa koota 90 00:06:17,000 --> 00:06:20,000 käyttäen tehdä ja sitten käynnissä koodisi C 91 00:06:20,000 --> 00:06:25,000 kaikki sinun täytyy tehdä PHP tiedosto on käynnistää PHP tulkki, 92 00:06:25,000 --> 00:06:30,000 joka on pieni ohjelma nimeltä PHP, 93 00:06:30,000 --> 00:06:35,000 ja argumentti annat tulkki on tiedosto, jonka haluat tulkita. 94 00:06:35,000 --> 00:06:40,000 Tässä tapauksessa dynamic.php. 95 00:06:40,000 --> 00:06:43,000 Oho, missä minä laittaa sen? 96 00:06:43,000 --> 00:06:52,000 Voi, laitan sen 9 §, ja täällä olen. Siksi. 97 00:06:52,000 --> 00:06:57,000 >> Nyt jos juoksen sen uudestaan 98 00:06:57,000 --> 00:07:02,000 näemme, että ensimmäinen getType funktiokutsuna 99 00:07:02,000 --> 00:07:04,000 var on kokonaisluku. 100 00:07:04,000 --> 00:07:12,000 Vuonna seuraava var on merkkijono, ja sitten kolmas var on boolean. 101 00:07:12,000 --> 00:07:15,000 Mitä mielenkiintoista tässä on, jos me vierittää takaisin ylös näemme, että 102 00:07:15,000 --> 00:07:18,000 Nämä ovat tyyppejä samanlaisia ​​kuin että meillä oli C. 103 00:07:18,000 --> 00:07:22,000 Meillä oli ints in C 104 00:07:22,000 --> 00:07:26,000 Meillä tavallaan oli jousille C, 105 00:07:26,000 --> 00:07:31,000 joten jouset eivät ole täysin legit tyyppinen siinä mielessä, että 106 00:07:31,000 --> 00:07:37,000 Meidän CS50 string oli todella mitä? 107 00:07:37,000 --> 00:07:39,000 Anteeksi? Missy? 108 00:07:39,000 --> 00:07:41,000 [Missy] Char *. 109 00:07:41,000 --> 00:07:43,000 Joo, se oli tämä char * käytimme. 110 00:07:43,000 --> 00:07:47,000 Vuoden alusta lukukauden käytimme merkkijono tyyppi, 111 00:07:47,000 --> 00:07:52,000 mutta se oli todella char * konepellin alle. 112 00:07:52,000 --> 00:07:58,000 Me vain määritellyn sitä, kun taas PHP nämä jouset ovat todellisia tyyppiä. 113 00:07:58,000 --> 00:08:07,000 Ei enää tätä char * tyyppinen kamaa. 114 00:08:07,000 --> 00:08:10,000 >> Huomaat, että voimme tehdä paljon enemmän asioita jouset 115 00:08:10,000 --> 00:08:14,000 paljon helpommin PHP kuin voisimme C, 116 00:08:14,000 --> 00:08:17,000 ja lopuksi, meillä on tämä Boolean, ja suuri ero on, että 117 00:08:17,000 --> 00:08:21,000 jos selaa alas näemme, että nimi tämäntyyppisten 118 00:08:21,000 --> 00:08:28,000 ovat nyt kokonaisluku, merkkijono, ja Boolen sijaan int ja bool- 119 00:08:28,000 --> 00:08:31,000 ja kun poimia eri ohjelmointikieliä, 120 00:08:31,000 --> 00:08:36,000 olettaen, että jossain vaiheessa elämäänne voit joutua kosketuksiin 121 00:08:36,000 --> 00:08:40,000 erilaisia ​​itse huomaat pikku koukero näin 122 00:08:40,000 --> 00:08:44,000 jossa C kutsuu kokonaislukuja ints. 123 00:08:44,000 --> 00:08:46,000 Jotkut kutsuvat sitä kokonaislukuja. 124 00:08:46,000 --> 00:08:51,000 On muitakin termejä, voit törmätä. 125 00:08:51,000 --> 00:08:55,000 Big int näimme tänään SQL. 126 00:08:55,000 --> 00:08:59,000 On myös useita ja sitten bool, boolean, 127 00:08:59,000 --> 00:09:03,000 kaikenlaisia ​​eroja siellä. 128 00:09:03,000 --> 00:09:07,000 >> Tämä ei ole kovin mielenkiintoista, mutta nyt aion antaa teille vähän aikaa 129 00:09:07,000 --> 00:09:13,000 jos me zoomata takaisin ulos-töihin läpi tämän harjoituksen alareunassa sivun 3 130 00:09:13,000 --> 00:09:20,000 jossa se kysyy, millaiset vastaavat arvot täällä alareunassa. 131 00:09:20,000 --> 00:09:24,000 Meillä on 3,50. 132 00:09:24,000 --> 00:09:28,000 Meillä on tämä asia täällä, mikä on mielenkiintoista. 133 00:09:28,000 --> 00:09:32,000 Emme ole nähneet, että ennen, mutta jos olet seurannut pitkin luento 134 00:09:32,000 --> 00:09:35,000 sinulla todennäköisesti jo tietää, mitä se on. 135 00:09:35,000 --> 00:09:40,000 Sitten meillä on tämä, mikä tämä on tavallaan outoja. 136 00:09:40,000 --> 00:09:42,000 Tunnistatko tämän. 137 00:09:42,000 --> 00:09:46,000 Mikä on tämän C? 138 00:09:46,000 --> 00:09:50,000 Sam? Mitä tämä antaa sinulle C? 139 00:09:50,000 --> 00:09:54,000 Se avaisi tiedoston nimeltä dynamic.php ja tehdä siitä luettavissa. 140 00:09:54,000 --> 00:09:58,000 Niin, ja mikä olisi tyyppinen muuttuja voisimme antaa tämän? >> Tiedosto tähti. 141 00:09:58,000 --> 00:10:02,000 Aivan, me antaa tätä tiedostoa tähti. 142 00:10:02,000 --> 00:10:08,000 Tämä on laillinen PHP liian. 143 00:10:08,000 --> 00:10:12,000 Suorita se. Katso mitä tapahtuu, kun ohitat että osaksi getType. 144 00:10:12,000 --> 00:10:19,000 Ja sitten myös tarkistaa mitä null on, mitä se voisi olla PHP. 145 00:10:19,000 --> 00:10:21,000 Annan teille pari minuuttia. 146 00:10:21,000 --> 00:10:24,000 Voit kirjaimellisesti kopioida ja liittää nämä arvot, 147 00:10:24,000 --> 00:10:29,000 ja sitten teemme pienen satunnainen puhelun sinua 148 00:10:29,000 --> 00:10:34,000 ja katso, mitä sinulla on. 149 00:10:34,000 --> 00:10:36,000 >> [Opiskelija] Minulla on kysymys. << Joo. 150 00:10:36,000 --> 00:10:40,000 Yhdessä luentojen David sanoi jotain, voit laittaa yläreunassa tiedoston 151 00:10:40,000 --> 00:10:43,000 joten sinun ei tarvitse kirjoittaa PHP aina. 152 00:10:43,000 --> 00:10:45,000 Mikä se oli? 153 00:10:45,000 --> 00:10:50,000 Hän luultavasti puhuu punnan bang, hash bang. 154 00:10:50,000 --> 00:10:57,000 Se on direktiivi, jos merkitset tiedoston suoritettavaksi 155 00:10:57,000 --> 00:11:01,000 niin mitä se tekee on kun suoritat tiedoston 156 00:11:01,000 --> 00:11:06,000 se kertoo kuori ohjelma 157 00:11:06,000 --> 00:11:12,000 käyttää PHP tulkin tulkita tiedoston sisällön. 158 00:11:12,000 --> 00:11:16,000 Kysymys on mitä tämä oli erityinen linja 159 00:11:16,000 --> 00:11:20,000 että voisimme sisällyttää yläreunassa meidän PHP tiedostoja ei tarvitse sisällyttää 160 00:11:20,000 --> 00:11:26,000 Tämä PHP line tai tämän PHP komento kun haluamme suorittaa tiedoston? 161 00:11:26,000 --> 00:11:31,000 Ja voit itse tehdä tämän kanssa joukko erilaisia ​​tiedostoja. 162 00:11:31,000 --> 00:11:37,000 Mielestäni se riippuu siitä, missä PHP binary tallennetaan, 163 00:11:37,000 --> 00:11:43,000 mutta usein usr / bin / php on hyvä paikka aloittaa. 164 00:11:43,000 --> 00:11:45,000 Voit selvittää tämän tarkalleen menee takaisin alas laitteesi 165 00:11:45,000 --> 00:11:50,000 ja kirjoittamalla, mitä PHP. 166 00:11:50,000 --> 00:11:55,000 Mikä komento keksii kun olet täytäntöönpanovaltion binary 167 00:11:55,000 --> 00:12:01,000 tai komento, jossa vastaava tiedosto on. 168 00:12:01,000 --> 00:12:06,000 Tämä kertoo minulle, että PHP on todella aliasing tämä binaaritiedoston 169 00:12:06,000 --> 00:12:13,000 joka tallennetaan usr / bin, mikä on kun paljon järjestelmän binaaritiedostot on asennettu. 170 00:12:13,000 --> 00:12:21,000 Esimerkiksi, jos selaa ylös, nyt kun olen laittanut tämän #! linja täällä 171 00:12:21,000 --> 00:12:27,000 Voin vierittää, ja voin yrittää ajaa 172 00:12:27,000 --> 00:12:35,000 dynamic.php, mutta saan tämän virheen lupa evätään, 173 00:12:35,000 --> 00:12:42,000 ja mitä se tarkoittaa, että tiedosto ei ole tällä hetkellä antaa suoritettavia käyttöoikeudet. 174 00:12:42,000 --> 00:12:46,000 Se ei ole merkitty tiedosto, joku voi ajaa. 175 00:12:46,000 --> 00:12:52,000 >> Kun juoksi soittaa tai clang ja sait suoritettavan siitä 176 00:12:52,000 --> 00:12:56,000 kääntäjä oli fiksu tietää, että hei, olen rakennus suoritettavan. 177 00:12:56,000 --> 00:13:00,000 Et luultavasti halua suorittaa sitä, niin se automaattisesti määrittää 178 00:13:00,000 --> 00:13:02,000 käyttöoikeudet sinulle. 179 00:13:02,000 --> 00:13:06,000 Tämä ei ole asia, mutta kun luot normaali tiedosto tyhjästä, 180 00:13:06,000 --> 00:13:13,000 Syynä on yleensä et halua olla mitään tiedoston koneellesi on täytäntöönpanokelpoinen, 181 00:13:13,000 --> 00:13:15,000 joten sinun todella täytyy mennä ja käsin tehdä se. 182 00:13:15,000 --> 00:13:22,000 Helpoin tapa tehdä se on kanssa chmod-komennolla, 183 00:13:22,000 --> 00:13:28,000 ja chmod + x sanoo lisää executable bit 184 00:13:28,000 --> 00:13:31,000 koska siellä lukea hieman, kirjoittaa vähän ja executable bit, 185 00:13:31,000 --> 00:13:35,000 r, w ja x, 186 00:13:35,000 --> 00:13:39,000 ja sanomalla chmod + x syttyy executable bit 187 00:13:39,000 --> 00:13:46,000 sillä silloin tiedoston me täsmentää, mikä tässä tapauksessa on dynamic.php. 188 00:13:46,000 --> 00:13:49,000 >> [Opiskelija] Onko se päällä kaikille? 189 00:13:49,000 --> 00:13:52,000 Katsotaanpa tarkistaa tämän, joten miten voisin tarkistaa käyttöoikeudet? 190 00:13:52,000 --> 00:13:54,000 Tiedätkö miten olisin tarkistaa käyttöoikeuksia tiedoston? 191 00:13:54,000 --> 00:13:56,000 [Äänetön opiskelija vastausta] 192 00:13:56,000 --> 00:13:58,000 Anteeksi? >> [Student] XSD. 193 00:13:58,000 --> 00:14:03,000 XSD antaa meille tiedosto hakata. 194 00:14:03,000 --> 00:14:09,000 Luetellaan kaikki tiedostot,-l, näyttää minulle kaikki tiedostot minun hakemistossa 195 00:14:09,000 --> 00:14:13,000 Tällainen on pitkästä, verbose listalle, joten tässä näemme, että 196 00:14:13,000 --> 00:14:17,000 Tämän dynamic.php tiedosto 197 00:14:17,000 --> 00:14:23,000 on viimeksi muutettu 5 marraskuu klo 16:21. 198 00:14:23,000 --> 00:14:26,000 Omistaja tiedoston jharvard. 199 00:14:26,000 --> 00:14:28,000 Tuo käyttäjän on kirjautunut sisään 200 00:14:28,000 --> 00:14:31,000 Tuo käyttäjä olen työskennellyt, 201 00:14:31,000 --> 00:14:36,000 ja jos olet myös laitteen olet myös työskennellyt käyttäjän jharvard. 202 00:14:36,000 --> 00:14:38,000 Olette opiskelijoiden ryhmässä, 203 00:14:38,000 --> 00:14:44,000 ja nämä ovat asioita, jotka näet riittävän usein. 204 00:14:44,000 --> 00:14:47,000 >> Voimme mennä paljon yksityiskohtia täällä, 205 00:14:47,000 --> 00:14:50,000 mutta suurimmaksi osaksi mitä haluat katsoa, ​​kun etsit nähdä 206 00:14:50,000 --> 00:14:55,000 onko tiedosto on suoritettavan on ensisijaisesti 207 00:14:55,000 --> 00:14:58,000 käyttäjä omistaa tiedoston, omistaja, 208 00:14:58,000 --> 00:15:03,000 joten tämä jharvard, ja sitten meillä on 209 00:15:03,000 --> 00:15:07,000 luvat bittiä tänne vasemmalla, 210 00:15:07,000 --> 00:15:13,000 ja tapa lukea tähän on, että viimeinen bitti 211 00:15:13,000 --> 00:15:18,000 tyypillisesti käytetään merkintää vai ei-ainakin tässä tapauksessa 212 00:15:18,000 --> 00:15:21,000 tämä viimeinen bitti on usein asetettu ad ilmoittamaan 213 00:15:21,000 --> 00:15:24,000 että tiedosto on hakemisto eikä vain normaali tiedosto. 214 00:15:24,000 --> 00:15:28,000 Sitten seuraavat 3 bittiä täällä 215 00:15:28,000 --> 00:15:34,000 määrittää käyttöoikeudet tiedoston omistaja on, 216 00:15:34,000 --> 00:15:38,000 joten tässä tapauksessa jharvard, kuten tiedoston omistaja voi lukea ja kirjoittaa tätä tiedostoa 217 00:15:38,000 --> 00:15:42,000 mutta siellä on viiva sanomalla, että jharvard voi suorittaa tätä tiedostoa. 218 00:15:42,000 --> 00:15:46,000 Seuraavat 3 bittiä ovat ryhmän, niin tämä on opiskelijoiden ryhmä, 219 00:15:46,000 --> 00:15:49,000 joten jos siellä oli useita käyttäjiä minun laitteessa, 220 00:15:49,000 --> 00:15:52,000 ja meillä oli useita käyttäjiä osana opiskelijoiden ryhmä, 221 00:15:52,000 --> 00:15:55,000 Sitten he kaikki voivat lukea tämän tiedoston, mutta he eivät voi kirjoittaa sitä, 222 00:15:55,000 --> 00:15:59,000 ja samoin kukaan muu maailma 223 00:15:59,000 --> 00:16:01,000 voi vain lukea tätä tiedostoa samoin. 224 00:16:01,000 --> 00:16:03,000 On hyvä, pitkä kirjailla tästä, 225 00:16:03,000 --> 00:16:05,000 joten voit lukea verkossa. 226 00:16:05,000 --> 00:16:10,000 Vuonna Harjoitus spec menemme tämän tarkemmin. 227 00:16:10,000 --> 00:16:12,000 >> [Opiskelija] Onko 218 viittaa maailmalle? 228 00:16:12,000 --> 00:16:17,000 218 on-off pääni olen unohtanut, 229 00:16:17,000 --> 00:16:20,000 mutta ei. 230 00:16:20,000 --> 00:16:29,000 Katsotaanpa. Olen pimennys on juuri nyt. 231 00:16:29,000 --> 00:16:32,000 Takaisin mitä aioimme tehdä tämän chmod + x 232 00:16:32,000 --> 00:16:37,000 jossa halusimme antaa dynamic.php executable oikeudet, 233 00:16:37,000 --> 00:16:40,000 ja kysymys oli, onko tämä antaisi executable oikeudet kaikille 234 00:16:40,000 --> 00:16:44,000 tai vain jharvard, ja näemme tämän 235 00:16:44,000 --> 00:16:48,000 käynnissä komennot ja kirjoittamalla ls-l, 236 00:16:48,000 --> 00:16:51,000 ja nyt näemme, että se on merkitty suoritettavaksi. 237 00:16:51,000 --> 00:16:54,000 Näetkö että oli värin muutos. 238 00:16:54,000 --> 00:16:57,000 Nyt dynamic.php on lueteltu vihreä, 239 00:16:57,000 --> 00:17:01,000 ja se näyttää vastaus kysymykseen mitä, Charlotte? 240 00:17:01,000 --> 00:17:04,000 [Charlotte] Vain jharvard. >> Vain jharvard, joo. 241 00:17:04,000 --> 00:17:08,000 >> Jos haluamme kääntää executable bitin kaikille 242 00:17:08,000 --> 00:17:10,000 miten voisi sen teemme? 243 00:17:10,000 --> 00:17:13,000 Mitään ajatuksia? >> + X? 244 00:17:13,000 --> 00:17:15,000 Joo, aivan. 245 00:17:15,000 --> 00:17:23,000 Charlotte sanoi voimme tehdä chmod a + x ja dynamic.php, 246 00:17:23,000 --> 00:17:26,000 ja jos nyt otamme ls-l näemme että suoritettavan bitit 247 00:17:26,000 --> 00:17:30,000 todellakin käytössä kaikille. 248 00:17:30,000 --> 00:17:37,000 Ja voit itse tehdä kääntöpuolella, joten voit sammuttaa sen kaikille 249 00:17:37,000 --> 00:17:41,000 käyttäen miinus. 250 00:17:41,000 --> 00:17:46,000 Nyt se on pois päältä, ja nyt voimme kääntää sen takaisin päälle jharvard 251 00:17:46,000 --> 00:17:52,000 jotta voimme ajaa sen nyt, 252 00:17:52,000 --> 00:17:58,000 ja nyt näet, kun otamme koodia tässä erityinen #! viiva huipulla, 253 00:17:58,000 --> 00:18:04,000 #! linja, kertoi kuori, 254 00:18:04,000 --> 00:18:08,000 kertoi terminaaliimme Hei, kun tätä tiedostoa suoritetaan, 255 00:18:08,000 --> 00:18:14,000 käyttää / usr / bin / php tulkita tämän tiedoston 256 00:18:14,000 --> 00:18:20,000 ja sitten tulostaa tuotoksen. 257 00:18:20,000 --> 00:18:22,000 [Äänetön opiskelija kysymys] 258 00:18:22,000 --> 00:18:25,000 Toki haluan vierittää takaisin ylös. Aivan näin. 259 00:18:25,000 --> 00:18:36,000 Näet kaikki nämä direktiivit aloittaa tämän punnan ja huutomerkki, 260 00:18:36,000 --> 00:18:39,000 joskus kutsutaan roska, hash bang. 261 00:18:39,000 --> 00:18:48,000 >> [Opiskelija] Miten voimme ajaa sen php dynamic.php ennen kuin teemme siitä executable? 262 00:18:48,000 --> 00:18:55,000 Kysymys oli siitä, miten voimme suorittaa tämän käyttämällä PHP binary 263 00:18:55,000 --> 00:18:58,000 vaikka dynamic.php ei ole suoritettava? 264 00:18:58,000 --> 00:19:01,000 Tämä on erittäin tärkeää, koska juuri näin 265 00:19:01,000 --> 00:19:06,000 se tulee toimimaan, kun kirjoitat Harjoitus 7. 266 00:19:06,000 --> 00:19:09,000 Suurimman osan ajasta PHP-tiedostot eivät ole suoraan suoritettavissa. 267 00:19:09,000 --> 00:19:14,000 Siten, että toimii, koska se on PHP binary se executable. 268 00:19:14,000 --> 00:19:16,000 Tulkki on asia, joka on parhaillaan toteutetaan, 269 00:19:16,000 --> 00:19:20,000 ja niin mitä se tekee on kirjaimellisesti slurping koko sisältö 270 00:19:20,000 --> 00:19:25,000 meidän dynamic.php tiedosto ja menee rivi riviltä 271 00:19:25,000 --> 00:19:29,000 ja täytäntöönpanovaltion nuo komennot, joten se käyttämällä PHP-tiedosto 272 00:19:29,000 --> 00:19:31,000 listana ohjeita. 273 00:19:31,000 --> 00:19:36,000 Se ei suoraan täytäntöönpanovaltion sitä. 274 00:19:36,000 --> 00:19:40,000 Siellä sanotaan, että nämä tiedostot tulkitaan ajon aikana. 275 00:19:40,000 --> 00:19:46,000 Se ajoaika kielensä sijasta jotain, joka määräytyy käännöksen yhteydessä, 276 00:19:46,000 --> 00:19:49,000 ei käännetty kieli kuten C. 277 00:19:49,000 --> 00:19:54,000 >> Onko tapa saada käyntiaika kielen toimimaan, jos se kääntää aikaa kielen, 278 00:19:54,000 --> 00:19:58,000 kuten jos sinulla on kaikki käynnissä tehty palvelimelle 279 00:19:58,000 --> 00:20:00,000 kuin-sinä tiedät mitä tarkoitan? 280 00:20:00,000 --> 00:20:04,000 Kyllä, joten kysymys on 281 00:20:04,000 --> 00:20:11,000 on olemassa tapa saada juosta aikaa kielillä toimia enemmän kuin kääntää aikaa eri kielillä? 282 00:20:11,000 --> 00:20:18,000 Ja siellä ovat, en tarkoita, että on aktiivinen tutkimusalue on paljon näistä yrityksistä. 283 00:20:18,000 --> 00:20:22,000 Uskon Facebook on tehnyt paljon työtä PHP 284 00:20:22,000 --> 00:20:25,000 kääntämiseen alas, joten se nopeammin, optimoi se 285 00:20:25,000 --> 00:20:29,000 koska heidän sivusto on rakennettu PHP. 286 00:20:29,000 --> 00:20:34,000 Jos olet seurannut node.js ollenkaan, 287 00:20:34,000 --> 00:20:40,000 joka on eräänlainen JavaScript-tulkin 288 00:20:40,000 --> 00:20:44,000 pystyä toimimaan JavaScript ulkopuolelle selaimen ulkopuolella selaimessasi, 289 00:20:44,000 --> 00:20:47,000 koska perinteisesti JavaScript olisi vain ajaa sisään Firefox tai Chrome, 290 00:20:47,000 --> 00:20:52,000 ja se voidaan tehdä jäähtyä animaatioita tapahtuu web-sivulla 291 00:20:52,000 --> 00:20:55,000 ja tehdä web sivun dynaaminen. 292 00:20:55,000 --> 00:20:59,000 Tämä on ollut rakennettu paljon työtä, että Google on tehnyt 293 00:20:59,000 --> 00:21:03,000 tehdä JavaScript ja C + + 294 00:21:03,000 --> 00:21:09,000 sitoa yhteen, joten siellä on paljon aktiivista tutkimusta 295 00:21:09,000 --> 00:21:13,000 päästä kielillä vuorovaikutuksessa ja optimoida niitä, 296 00:21:13,000 --> 00:21:17,000 pääasiassa koska niin monet ihmiset voivat koodata PHP ja JavaScript 297 00:21:17,000 --> 00:21:19,000 koska se on paljon helpompaa. 298 00:21:19,000 --> 00:21:21,000 Se on paljon mukavampaa. Sinulla ei ole viitteitä. 299 00:21:21,000 --> 00:21:27,000 Sinulla ei ole tyyppiä kelluva noin. 300 00:21:27,000 --> 00:21:31,000 He halusivat saada hyötyä näistä kääntää aikaa kielillä 301 00:21:31,000 --> 00:21:36,000 kaikki tyypin tarkkailun ja nopeuden ja alemman muistin käyttö ja kaikki tämä 302 00:21:36,000 --> 00:21:42,000 mutta silti säilyttää joustavuus ja helppokäyttöisyys näitä uusilla. 303 00:21:42,000 --> 00:21:46,000 >> Takaisin meidän alkuperäinen suunnitelma hyökätä. 304 00:21:46,000 --> 00:21:50,000 Meillä muutama näistä kysymyksistä täällä meidän ongelma set spec. 305 00:21:50,000 --> 00:21:54,000 Mennään läpi todella nopeasti, ja me menemme ympäri huonetta. 306 00:21:54,000 --> 00:21:59,000 Charlotte, millainen on 3,50? 307 00:21:59,000 --> 00:22:01,000 [Charlotte] Tuo kaksinkertainen. >> Se kaksinkertainen. 308 00:22:01,000 --> 00:22:03,000 Jimmy, mitä on tämä seuraava? >> Array. 309 00:22:03,000 --> 00:22:09,000 Array, mahtava, ja Jared, mikä on fopen? 310 00:22:09,000 --> 00:22:11,000 [Jared] Se voimavara. >> Se voimavara. 311 00:22:11,000 --> 00:22:15,000 Sellainen uusi, ei ole tiedosto tähden, ei tiedostoa. 312 00:22:15,000 --> 00:22:19,000 Se on resurssi on tyyppiä PHP, 313 00:22:19,000 --> 00:22:24,000 ja olen pahoillani, Ella, viimeinen nolla on mitä? 314 00:22:24,000 --> 00:22:26,000 Null. 315 00:22:26,000 --> 00:22:28,000 Null, miten se kirjoitettu PHP? >> Samalla tavalla. 316 00:22:28,000 --> 00:22:30,000 Samoin pääkaupungeissa? >> Joo. 317 00:22:30,000 --> 00:22:33,000 Joo, okei. 318 00:22:33,000 --> 00:22:35,000 Täällä mennään, meillä kaksinkertainen, meillä array, 319 00:22:35,000 --> 00:22:41,000 meillä resurssi, ja sitten meillä null. 320 00:22:41,000 --> 00:22:48,000 Katsotaan nyt olet nähnyt, 321 00:22:48,000 --> 00:22:51,000 Katsotaanpa, joten nyt kai mitä minäkin haluan tehdä on vetää ylös 322 00:22:51,000 --> 00:22:56,000 Tämän sivun täällä, tämä php.net / manuaalinen, 323 00:22:56,000 --> 00:23:01,000 joten jos te kopioit tämän ja avaa selain. 324 00:23:01,000 --> 00:23:07,000 Aion vetää Chrome, laita se sisään 325 00:23:07,000 --> 00:23:10,000 Haluan näyttää sinulle tämän ei vain siksi, 326 00:23:10,000 --> 00:23:13,000 voimme puhua koko päivä tyypit ja kaikki hauskoja juttuja 327 00:23:13,000 --> 00:23:19,000 vaan koska tämä on PHP käsikirja, 328 00:23:19,000 --> 00:23:23,000 ja siellä on paljon PHP ohjelmoijat siellä. 329 00:23:23,000 --> 00:23:26,000 On olemassa paljon PHP sivustot siellä, 330 00:23:26,000 --> 00:23:31,000 ja seurauksena on paljon dokumentaatiota PHP, 331 00:23:31,000 --> 00:23:36,000 ja manuaalinen, tämä php.net, on todella hyvä paikka mennä 332 00:23:36,000 --> 00:23:43,000 kun sinulla on kysymyksiä siitä, mitä on paras tapa tehdä X PHP 333 00:23:43,000 --> 00:23:45,000 tai mitä toimintoa näyttää? 334 00:23:45,000 --> 00:23:49,000 Vain sellainen perehtyminen mitä tämä näyttää, koska 335 00:23:49,000 --> 00:23:54,000 tulet tänne usein, bitti ongelma asetettu 7. 336 00:23:54,000 --> 00:23:57,000 >> Jos päädyt tekemään opinnäytetyön, joka käyttää PHP 337 00:23:57,000 --> 00:24:04,000 tämä on paikka sinun tulee hyvin perehtynyt. 338 00:24:04,000 --> 00:24:09,000 Usein miten ihmiset tekevät tätä he käyttävät Google etsiä sivuston, 339 00:24:09,000 --> 00:24:16,000 ja he eivät käytä hakukenttää, joka on täällä oikeassa yläkulmassa, joka on eräänlainen pieni. 340 00:24:16,000 --> 00:24:19,000 Jos olet Googling noin jotain tekemistä PHP ja näet 341 00:24:19,000 --> 00:24:24,000 yksi käsikirjan linkkejä pop up voit yleensä luottaa, että 342 00:24:24,000 --> 00:24:31,000 koska melko hyvä voimavara. 343 00:24:31,000 --> 00:24:34,000 Awesome, joten ulos näistä tyypeistä, vain uteliaisuudesta, 344 00:24:34,000 --> 00:24:37,000 mitkä emme ole nähneet? 345 00:24:37,000 --> 00:24:40,000 Mitään emme ole nähneet täällä? 346 00:24:40,000 --> 00:24:44,000 [Student] Resource. >> Näimme resurssi fopen puhelun. 347 00:24:44,000 --> 00:24:48,000 [Student] Objects. >> Objektit emme ole nähneet varmasti. 348 00:24:48,000 --> 00:24:51,000 Jonotusten emme ole nähneet. 349 00:24:51,000 --> 00:24:54,000 On olemassa joitakin näistä pseudo-tyyppejä. 350 00:24:54,000 --> 00:24:57,000 Olemme ehdottomasti vain näki kokonaisluku ja kaksinkertainen. 351 00:24:57,000 --> 00:25:01,000 Emme näe jotkut toiset, joten jos klikkaa kokonaislukuja 352 00:25:01,000 --> 00:25:08,000 Voimme nähdä onko muita kokonaislukuja, että ne ovat täällä? 353 00:25:08,000 --> 00:25:11,000 Ovatko ne kaikki niin kokonaisluku, kokonaisluvun, kokonaisluku. 354 00:25:11,000 --> 00:25:14,000 Joillakin kielillä on suurempi kokonaisluku tyyppejä, 355 00:25:14,000 --> 00:25:23,000 kuten näimme MySQL tänään oli int ja sitten iso int. 356 00:25:23,000 --> 00:25:25,000 Cool. 357 00:25:25,000 --> 00:25:28,000 >> Joten, PHP manuaali. 358 00:25:28,000 --> 00:25:37,000 Mennään takaisin meidän ongelmamme asettaa spec, ja me nyt selaa sivu 4. 359 00:25:37,000 --> 00:25:41,000 Yksi asioista, joita tapahtuu, kun saat kielillä 360 00:25:41,000 --> 00:25:49,000 joilla ei ole tätä staattinen tyypitys, joten näitä kieliä, jos sinulla on julistaa 361 00:25:49,000 --> 00:25:52,000 tyyppi muuttujan edessä 362 00:25:52,000 --> 00:26:00,000 on saat jos saatat alkaa ottaa muuttujia erilaisia 363 00:26:00,000 --> 00:26:04,000 vuorovaikutuksessa toistensa kanssa, 364 00:26:04,000 --> 00:26:09,000 ja PHP tämä juttu, jossa se yrittää tehdä 365 00:26:09,000 --> 00:26:13,000 mitä se pitää järkevintä tehdä 366 00:26:13,000 --> 00:26:18,000 kun on 2 erilaista vuorovaikutuksessa toistensa kanssa. 367 00:26:18,000 --> 00:26:24,000 Esimerkiksi jos katsomme näitä riviä koodia täällä 368 00:26:24,000 --> 00:26:29,000 näette, että meillä mitä tapahtuu, kun 369 00:26:29,000 --> 00:26:38,000 yritämme lisätä merkkijono 1 kokonaisluku 2. 370 00:26:38,000 --> 00:26:41,000 Mitä tapahtuu, jos yritämme lisätä merkkijono, joka ei ole numeerinen arvo 371 00:26:41,000 --> 00:26:48,000 vaan todellinen merkkejä, CS numero 50? 372 00:26:48,000 --> 00:26:51,000 Sitten näemme onko jotain erilaista mitä tapahtuu jos 373 00:26:51,000 --> 00:26:56,000 sijaan lisätä merkkijonon numero olemme lisäämällä numeron merkkijono, 374 00:26:56,000 --> 00:27:00,000 ja niin edelleen ja niin edelleen siihen pisteeseen, jossa saamme 375 00:27:00,000 --> 00:27:05,000 jonkinlainen outoja juttuja täällä missä meillä 7 + totta. 376 00:27:05,000 --> 00:27:09,000 Mitä hittoa se tarkoittaa? 377 00:27:09,000 --> 00:27:19,000 >> Jos te mennä eteenpäin ja liitä osa tämä koodi laitteeseen. 378 00:27:19,000 --> 00:27:27,000 Voit pitää sitä dynamic.php. 379 00:27:27,000 --> 00:27:30,000 Saa nähdä mitä tapahtuu. 380 00:27:41,000 --> 00:27:43,000 [Opiskelija] Just käyttää print, ei printf? 381 00:27:43,000 --> 00:27:52,000 Joo, niin huomaat, että tulosta on myös kelvollinen toiminto tulostaa PHP. 382 00:27:52,000 --> 00:27:54,000 On olemassa monia erilaisia ​​tapoja tehdä sitä. 383 00:27:54,000 --> 00:27:58,000 Näemme kanssa pari esimerkkiä myöhemmin, kun alamme keskustella 384 00:27:58,000 --> 00:28:02,000 siitä ainutlaatuinen ongelma, että me aiomme kirjoittaa 385 00:28:02,000 --> 00:28:06,000 ja sitten pitoisuudet ongelma, että me aiomme kirjoittaa 386 00:28:06,000 --> 00:28:09,000 että vaikka meillä on fopen ja fclose 387 00:28:09,000 --> 00:28:15,000 se useinkaan ole yksinkertaisin tapa lukea tiedoston sisällön. 388 00:28:15,000 --> 00:28:21,000 PHP on paljon näitä C-like jäämiä jostakin. 389 00:28:21,000 --> 00:28:28,000 [Opiskelija] Kun laitoin kaikki 6 näistä asioista minulla on vain numeron lähdön. 390 00:28:28,000 --> 00:28:36,000 [Nate H.] Kun laittaa kaikki 6 nämä asiat. 391 00:28:36,000 --> 00:28:39,000 Katsotaanpa on se, koska se on mahdollisesti- 392 00:28:39,000 --> 00:28:46,000 Yksi asia on, että nämä print puheluja ei lakkauteta lopussa uusia linjoja. 393 00:28:46,000 --> 00:28:49,000 Ei ole uutta erottavan jokainen tulostaa puhelujen 394 00:28:49,000 --> 00:28:51,000 joten ehkä olet saada yksi suuri numero, 395 00:28:51,000 --> 00:28:58,000 ja se on oikeastaan ​​vain amalgaami rivinvaihtomerkit. 396 00:28:58,000 --> 00:29:00,000 [Student] Okei, miten varmista- 397 00:29:00,000 --> 00:29:03,000 No, on olemassa joukko erilaisia ​​tapoja. 398 00:29:03,000 --> 00:29:06,000 Voisit manuaalisesti laittaa tulostaa uuden rivin merkki, 399 00:29:06,000 --> 00:29:09,000 kaiku uuden rivin merkki, 400 00:29:09,000 --> 00:29:12,000 tulostaa uuden rivin. 401 00:29:12,000 --> 00:29:16,000 [Student] Niin kaiku on sama asia kuin printf? 402 00:29:16,000 --> 00:29:21,000 >> Printf on kuten C printf 403 00:29:21,000 --> 00:29:24,000 missä olet tulostat muotoiltu merkkijono. 404 00:29:24,000 --> 00:29:32,000 Olet toimittamisen muotomerkkijonoa ja sitten kaikki paikkamerkin muuttujat. 405 00:29:32,000 --> 00:29:39,000 Se on usein jotain, joka ei ole käytössä, 406 00:29:39,000 --> 00:29:42,000 Katsotaanpa, kuten vastuuvapauslauseke, 407 00:29:42,000 --> 00:29:48,000 Olen niin tuttuja PHP kuin olen muilla web kieliä, 408 00:29:48,000 --> 00:29:53,000 ja kun olen ohjelmoitu PHP En yleensä käytä printf 409 00:29:53,000 --> 00:29:59,000 koska minusta on nopeampi käyttää merkkijono interpolointi ominaisuuksia, että se on, 410 00:29:59,000 --> 00:30:04,000 jonka me mennä, ja minä näytän sinulle vain toinen, 411 00:30:04,000 --> 00:30:08,000 taas C meillä sellainen täytyy tehdä tämä hacky asia saada se tulostaa oikein. 412 00:30:08,000 --> 00:30:16,000 Voit itse laittaa muuttujia suoraan merkkijonoja PHP. 413 00:30:16,000 --> 00:30:22,000 Printf on tavallaan liian pitkään, mitä yleensä teen. Kyllä, Ella. 414 00:30:22,000 --> 00:30:25,000 [Ella] Yleensä jos saat jäsennysvirhe se tarkoittaa, 415 00:30:25,000 --> 00:30:30,000 kuten C-se ei kerro tarkalleen, missä virhe on ja mitä se on, 416 00:30:30,000 --> 00:30:34,000 niin se merkitsee katsoa läpi koko koodin ja tajuta se? 417 00:30:34,000 --> 00:30:39,000 Se on yleensä enemmän kohdennettuja kuin. 418 00:30:39,000 --> 00:30:48,000 Mielestäni tässä tapauksessa se oli hieman pois, 419 00:30:48,000 --> 00:30:51,000 joten uskon siinä tapauksessa olimme puuttuu puolipiste. 420 00:30:51,000 --> 00:30:54,000 Se yritti saada tolkkua kaikesta, 421 00:30:54,000 --> 00:30:57,000 joten kuten nämä tulkita kielillä, tulkki aikoo kokeilla 422 00:30:57,000 --> 00:31:01,000 ja tekemään parhaansa, jotta kaikki toimii asianmukaisesti. 423 00:31:01,000 --> 00:31:04,000 >> Näet, esimerkiksi JavaScript- 424 00:31:04,000 --> 00:31:10,000 Tulet usein-rivikäskyt päättyvät puolipisteellä aivan kuten he tekevät PHP, 425 00:31:10,000 --> 00:31:13,000 aivan kuten he tekevät C. 426 00:31:13,000 --> 00:31:15,000 JavaScript jotkut JavaScript-tulkit 427 00:31:15,000 --> 00:31:20,000 on paljon selaimet laittaa puolipistettä sinulle 428 00:31:20,000 --> 00:31:23,000 jos satut puuttuu niihin. 429 00:31:23,000 --> 00:31:29,000 He yrittävät ja majoittaa joitakin epäjärjestys teidän. 430 00:31:29,000 --> 00:31:34,000 Siellä se saattaa yrittää ja yrittää ja yrittää tehdä asiat toimivat, 431 00:31:34,000 --> 00:31:36,000 ja lopuksi se päästä pisteeseen, jossa se sanoo okei, 432 00:31:36,000 --> 00:31:38,000 En voi tehdä asioita toimi pelastamisesta, ja se jos saat rivinumero 433 00:31:38,000 --> 00:31:44,000 että voi tuntua hieman pois tarkka paikka. 434 00:31:44,000 --> 00:31:47,000 Okei, joten mennään läpi tämän todella nopeasti. 435 00:31:47,000 --> 00:31:50,000 Jätimme pois Ella, joten mennään yli Missy, 436 00:31:50,000 --> 00:31:54,000 ja Missy, mitä tulostaa merkkijonon 1 plus numero 2 antaa sinulle? 437 00:31:54,000 --> 00:31:56,000 [Missy] 3. >> 3. 438 00:31:56,000 --> 00:31:59,000 Onko siinä järkeä? Tavallaan? 439 00:31:59,000 --> 00:32:02,000 Antaako se sinulle numero? Antaako se sinulle merkkijono? 440 00:32:02,000 --> 00:32:05,000 [Missy] joukko. >> Se numero. 441 00:32:05,000 --> 00:32:09,000 Mutta se tulostamista, joten se aio antaa teille jonkinlaisen merkkijono. 442 00:32:09,000 --> 00:32:12,000 >> Yksi asia, mitä voimme tehdä tarkistaa tämän 443 00:32:12,000 --> 00:32:21,000 on, jos teemme $ var = 1 + 2 444 00:32:21,000 --> 00:32:28,000 ja sitten sanomme kaiku getType, 445 00:32:28,000 --> 00:32:33,000 joten käytämme kolmasosa eräänlainen tulostaa täältä. 446 00:32:33,000 --> 00:32:39,000 Nyt näemme, mitä tapahtuu täällä. 447 00:32:39,000 --> 00:32:42,000 Täällä mitä meillä on meillä kokonaisluku pois tästä. 448 00:32:42,000 --> 00:32:45,000 Vaikka olimme lisäämällä tämän merkkijonon numero, 449 00:32:45,000 --> 00:32:48,000 emme saaneet merkkijono pois se, kuten Missy sanoi. 450 00:32:48,000 --> 00:32:52,000 Olimme saada kokonaisluku. 451 00:32:52,000 --> 00:32:57,000 Okei, joten katsotaanpa, seuraavaksi ylös, Kevin. 452 00:32:57,000 --> 00:32:59,000 CS + 50? >> [Kevin] 50. 453 00:32:59,000 --> 00:33:02,000 [Nate H.] 50. Onko siinä järkeä? 454 00:33:02,000 --> 00:33:04,000 [Kevin] Joo. 455 00:33:04,000 --> 00:33:06,000 [Nate H.] Miksi? Miksi se teistä järkeä? 456 00:33:06,000 --> 00:33:11,000 [Kevin] Koska se on vain ottaa merkkijono, jossa numero nolla. 457 00:33:11,000 --> 00:33:16,000 Hienoa. 458 00:33:16,000 --> 00:33:20,000 Tavallaan epäselviä tilanteita, mutta on hyvä tietää, mitä tapahtuu. 459 00:33:20,000 --> 00:33:25,000 Stella, mitä tapahtuu seuraavaksi numero 1 + merkkijono 2? 460 00:33:25,000 --> 00:33:27,000 [Stella] 3. >> 3 uudelleen. 461 00:33:27,000 --> 00:33:30,000 Ja tässä tapauksessa, saamme merkkijono tai numero? 462 00:33:30,000 --> 00:33:36,000 >> Annetaanpa tämän kokeilla. 463 00:33:36,000 --> 00:33:43,000 Joku minua nopeampi saada vastauksen? Charlotte? 464 00:33:43,000 --> 00:33:46,000 Minä didn't-kunnossa, katsotaanpa, aiomme tehdä samanlaista asiaa 465 00:33:46,000 --> 00:33:49,000 jossa meillä numero plus merkkijono, ja aiomme toistaa tyyppi, 466 00:33:49,000 --> 00:33:51,000 mitä saamme. 467 00:33:51,000 --> 00:33:55,000 Saamme myös kokonaisluku. 468 00:33:55,000 --> 00:33:58,000 Sillä ei ole väliä kumpi on merkkijono, joista yksi on numero. 469 00:33:58,000 --> 00:34:00,000 Olemme edelleen menossa saada kokonaisluku. 470 00:34:00,000 --> 00:34:04,000 Se on silti aio tehdä mitä voimme odottaa. 471 00:34:04,000 --> 00:34:09,000 Selvä, joten Sam, entä 90 + 9 pulloa olutta seinälle? 472 00:34:09,000 --> 00:34:12,000 [Sam] 99. >> 99. 473 00:34:12,000 --> 00:34:15,000 Ei pulloa olutta seinälle, vaikka. 474 00:34:15,000 --> 00:34:17,000 Se antaa meille hieman enemmän tietoa siitä, mitä on tapahtumassa. 475 00:34:17,000 --> 00:34:21,000 [Sam] Jos olisit kirjoittanut 9 kirjaimin 476 00:34:21,000 --> 00:34:23,000 niin olisit 90, eikö? 477 00:34:23,000 --> 00:34:26,000 [Nate H.] Joo. 478 00:34:26,000 --> 00:34:30,000 Kysymys oli, jos olisimme kirjoittaneet 9 out N-I-N-E 479 00:34:30,000 --> 00:34:34,000 olisimme saaneet 99 tai 90? 480 00:34:34,000 --> 00:34:38,000 Me saisin 90. 481 00:34:38,000 --> 00:34:42,000 Se on kirjaimellisesti vain etsivät numeromerkit. 482 00:34:42,000 --> 00:34:46,000 Se ei fiksu tunnistaa useita sanoja ja juttuja. Kyllä. 483 00:34:46,000 --> 00:34:48,000 >> [Student] Onko olemassa sellaista asiaa kuin tyypittely PHP? 484 00:34:48,000 --> 00:34:54,000 On, ja se on juuri niin voisitte tehdä sen C 485 00:34:54,000 --> 00:34:56,000 Entä 10/7, Charlotte? 486 00:34:56,000 --> 00:34:58,000 [Charlotte] 1,4285. 487 00:34:58,000 --> 00:35:01,000 [Nate H.] Niin, mitä voisi olla yllättävää tästä? 488 00:35:01,000 --> 00:35:04,000 Mitä tapahtuisi, jos teit tämän samanlaista asia C- 489 00:35:04,000 --> 00:35:06,000 Jos teit 10/7 C? 490 00:35:06,000 --> 00:35:08,000 [Charlotte] Se vain antaa teille, riippuen siitä, miten typecasted luulisin 491 00:35:08,000 --> 00:35:12,000 se antaa sinulle vain rajallinen määrä numeroita desimaalipilkun jälkeen. 492 00:35:12,000 --> 00:35:16,000 Niin, joten rajoitettu määrä desimaalilla. 493 00:35:16,000 --> 00:35:21,000 Mitä muuta voisi olla, olisi se anna mitään numeroita desimaalipilkun jälkeen? 494 00:35:21,000 --> 00:35:28,000 Usein ei, joten jälleen, riippuen siitä, miten olet tyypittely sen 495 00:35:28,000 --> 00:35:31,000 se voi tai ei muuntaa liukuluku. 496 00:35:31,000 --> 00:35:35,000 Täällä se oli tavallaan mukavaa, että se teki. 497 00:35:35,000 --> 00:35:40,000 Olimme osoittanut teille tämän takaisin, kun aloimme tehdä tällaista kamaa C 498 00:35:40,000 --> 00:35:44,000 se todennäköisesti olisi tehnyt hieman järkeä 499 00:35:44,000 --> 00:35:48,000 että se ei vain mennä 1. 500 00:35:48,000 --> 00:35:51,000 Ja sitten lopuksi, Jamie, entä 7 + totta? 501 00:35:51,000 --> 00:35:53,000 [Jamie] 8. >> 8. 502 00:35:53,000 --> 00:35:56,000 Mitä se tarkoittaa? 503 00:35:56,000 --> 00:35:58,000 Kai se vain antaa todellista arvoa 1. 504 00:35:58,000 --> 00:36:01,000 Joo. Mitä tapahtuu, jos muutamme arvoksi false? 505 00:36:01,000 --> 00:36:04,000 [Opiskelija] 7. 506 00:36:04,000 --> 00:36:09,000 Joo, niin muista mistä puhumme näistä binääri arvoja 507 00:36:09,000 --> 00:36:12,000 1 olemisesta, 0 on pois? 508 00:36:12,000 --> 00:36:17,000 Nyt meillä on tosi on 1, 0 on epätosi, 509 00:36:17,000 --> 00:36:21,000 ja et ehkä nähneet tämän C esimerkeissä että olemme tehneet viime lukukauden, 510 00:36:21,000 --> 00:36:27,000 mutta historiallisesti bool tyyppi C ei ole ollut todellista tyyppiä, 511 00:36:27,000 --> 00:36:32,000 joten ihmiset ovat käyttäneet 0 ja 1 sijasta oikean ja väärän. 512 00:36:32,000 --> 00:36:35,000 Tämä on osoitus siitä. 513 00:36:35,000 --> 00:36:39,000 >> Okei, joten yksi tärkeä osa tästä kaikesta 514 00:36:39,000 --> 00:36:41,000 on, että meillä on nämä eri. 515 00:36:41,000 --> 00:36:43,000 Ne voivat olla vuorovaikutuksessa toistensa kanssa. 516 00:36:43,000 --> 00:36:49,000 Ne voivat usein olla vuorovaikutuksessa toistensa kanssa tavoilla, jotka ovat mukavia, kuten olemme nähneet täällä. 517 00:36:49,000 --> 00:36:53,000 On kiva voida olla merkkijono 1 ja numero 2, lisää ne yhteen ja saat 3. 518 00:36:53,000 --> 00:36:55,000 Siinä on järkeä. 519 00:36:55,000 --> 00:36:59,000 Kuitenkin, kun kirjoitat sivustoja, ja varsinkin kun olet käsittelyssä 520 00:36:59,000 --> 00:37:04,000 käyttäjä syöttää, niin sano olet kirjoittanut web-lomakkeen 521 00:37:04,000 --> 00:37:09,000 joka kerää tietoja käyttäjän ja sitten menee käsitellä sitä 522 00:37:09,000 --> 00:37:13,000 takana loppuun, palvelimen puolella PHP-koodin 523 00:37:13,000 --> 00:37:18,000 Jos odotat, että arvo käyttäjän kirjoitettu ja toimitettu 524 00:37:18,000 --> 00:37:23,000 lomakkeeseen olla kokonaisluku tai olla liukuluku tai jotain 525 00:37:23,000 --> 00:37:29,000 sinun täytyy erikseen heittää sen 526 00:37:29,000 --> 00:37:34,000 ja sitten tehdä joitakin tyyppi tarkkailun. 527 00:37:34,000 --> 00:37:41,000 >> Et halua vain luottaa tällaisen jongleerausta järjestelmä tehdä asioita selvittää, 528 00:37:41,000 --> 00:37:48,000 erityisesti turvallisuussyistä ja vain kestävyyttä sivuston. 529 00:37:48,000 --> 00:37:51,000 Vain jotain pitää mielessä, että kun olet käsittely lomaketiedot, 530 00:37:51,000 --> 00:37:57,000 mitä vastaan ​​tulee postitse tai GET Superglobaalit 531 00:37:57,000 --> 00:38:01,000 Varmista, että olet aina vahvistaa sen ja muuntaa sen ja Typecast sitä. 532 00:38:01,000 --> 00:38:04,000 Ja aivan kuten puhuimme hetki sitten, että tyypittely 533 00:38:04,000 --> 00:38:08,000 PHP on täsmälleen sama kuin C, jossa olet sulkeet 534 00:38:08,000 --> 00:38:14,000 ja sitten tyyppi. 535 00:38:14,000 --> 00:38:16,000 Pidä se mielessä. 536 00:38:16,000 --> 00:38:19,000 Yksi toiminto on kätevä, kun teet tämän 537 00:38:19,000 --> 00:38:22,000 on olemme käyttäneet ja tämä on tavallaan kuin syrjään- 538 00:38:22,000 --> 00:38:27,000 olemme käyttäneet tätä getType toimintoa täällä 539 00:38:27,000 --> 00:38:30,000 selvittää tyypin muuttuja, 540 00:38:30,000 --> 00:38:37,000 ja vaikka tämä on kätevä virheenjäljitykseen ja mitä Muuttujan tyyppi on 541 00:38:37,000 --> 00:38:42,000 et halua käyttää tätä, esimerkiksi tila, jossa 542 00:38:42,000 --> 00:38:57,000 olet tarkkailun nähdä jos getType dollaria var = kokonaisluku tehdä jotain. 543 00:38:57,000 --> 00:39:01,000 Tämä on huono, huono, huono. 544 00:39:01,000 --> 00:39:09,000 Sen sijaan on olemassa näitä toimintoja kutsutaan on kokonaisluku, on merkkijono, 545 00:39:09,000 --> 00:39:14,000 on matriisi, jota haluat käyttää sen sijaan, joten tässä tapauksessa 546 00:39:14,000 --> 00:39:18,000 mitä haluaisi tehdä eikä tämä kaveri täällä 547 00:39:18,000 --> 00:39:31,000 on käyttää on kokonaisluku var. 548 00:39:31,000 --> 00:39:37,000 Ja he usein nimitystä on is_ * siinä mielessä, että voisit korvata * kanssa kokonaisluku, 549 00:39:37,000 --> 00:39:43,000 string, jne., ja varmuuden vuoksi todella nopea 550 00:39:43,000 --> 00:39:50,000 on tämä on int php. 551 00:39:50,000 --> 00:39:59,000 Taisit tehdä joko on int tai on kokonaisluku samoin? 552 00:39:59,000 --> 00:40:06,000 Kyllä, alias, joten int kokonaisluku aliakset. 553 00:40:06,000 --> 00:40:08,000 Cool. 554 00:40:14,000 --> 00:40:17,000 >> Miten meillä menee? 555 00:40:17,000 --> 00:40:20,000 Katsotaanpa nopeutuvan hieman. 556 00:40:20,000 --> 00:40:24,000 Nyt aiomme puhua ryhmät, niin näet 557 00:40:24,000 --> 00:40:28,000 seuraavassa osassa spec puhumme miten taulukot PHP 558 00:40:28,000 --> 00:40:31,000 ovat hieman erilaiset kuin ne ovat C. 559 00:40:31,000 --> 00:40:34,000 Todellisuudessa he tavallaan amalgaami 560 00:40:34,000 --> 00:40:36,000 matriisit, että olet tullut tuntemaan ja rakastamaan C 561 00:40:36,000 --> 00:40:40,000 jossa kaikki on samaa tyyppiä 562 00:40:40,000 --> 00:40:43,000 tallennettu peräkkäin ja vierekkäin muistiin, 563 00:40:43,000 --> 00:40:46,000 ja sinulla on näitä numeerisia indeksit. 564 00:40:46,000 --> 00:40:49,000 Sinulla on indeksi 0, indeksi 1, indeksi 2, 565 00:40:49,000 --> 00:40:53,000 ja voit tallentaa arvot nuo indeksit. 566 00:40:53,000 --> 00:40:57,000 Voit myös C, kun kirjoitit oikeinkirjoituksen, monet teistä 567 00:40:57,000 --> 00:41:00,000 teki tiiviste lähestymistapaa, ja näit, että meillä oli 568 00:41:00,000 --> 00:41:03,000 erilaisia ​​varastointi jossa olimme kartoitus 569 00:41:03,000 --> 00:41:07,000 avain-arvo, joten kun olet yrittänyt tallentaa jotain tiiviste 570 00:41:07,000 --> 00:41:11,000 piti määrittää, että olet halunnut tallentaa sen tietyn avaimen, 571 00:41:11,000 --> 00:41:17,000 ja että avain määrittää sijainti, arvo ja jossa se tallennetaan. 572 00:41:17,000 --> 00:41:22,000 Olet tavallaan sai sekä näiden käsitteiden tapahtuu samaan aikaan PHP array, 573 00:41:22,000 --> 00:41:27,000 ja sen seurauksena usein kutsuvat näitä assosiatiiviset taulukot 574 00:41:27,000 --> 00:41:33,000 missä olemme yhdistämällä avaimen arvon. 575 00:41:33,000 --> 00:41:39,000 Tässä seuraavassa osassa puhumme yksinkertainen PHP array 576 00:41:39,000 --> 00:41:45,000 jossa meillä on avaimet a, b ja c, 577 00:41:45,000 --> 00:41:53,000 kaikki jouset, mappaamiseen kokonaislukuja 1, 2, ja 3. 578 00:41:53,000 --> 00:41:57,000 Ja voit olla avaimet erilaisia. 579 00:41:57,000 --> 00:42:00,000 >> Sinulla voi olla joitakin avaimet ovat merkkijonoja, jotkut avaimet ovat kokonaislukuja. 580 00:42:00,000 --> 00:42:03,000 Voi olla arvot erilaisia. 581 00:42:03,000 --> 00:42:06,000 Sinulla voi olla arvo, joka on merkkijono, arvo on kokonaisluku, 582 00:42:06,000 --> 00:42:11,000 arvo, joka on esineen tai toisen ryhmän, esimerkiksi 583 00:42:11,000 --> 00:42:16,000 kaikki samassa array esine, joka on eräänlainen outo. 584 00:42:16,000 --> 00:42:20,000 Sinun ei tarvitse olla array, joka on juuri yhdenlainen elementti. 585 00:42:20,000 --> 00:42:26,000 Sinulla voi olla monia eri asioita tapahtuu siellä. 586 00:42:26,000 --> 00:42:33,000 Toinen asia huomata on että kun teet nähdä jotain tämän koodin, 587 00:42:33,000 --> 00:42:38,000 joka on voimassa PHP julistaa joukko aivan kuten tämä, 0, 1, 2, 3, 4, 5, 588 00:42:38,000 --> 00:42:43,000 joka julistaa alustetaan $ arr olla tämän array. 589 00:42:43,000 --> 00:42:48,000 Mutta mitä olet itse palaveriin konepellin alla on tällainen implisiittinen 590 00:42:48,000 --> 00:42:55,000 sukupolven avaimet missä meillä 0-0, 1-1, 2-2, 3-3. 591 00:42:55,000 --> 00:42:59,000 Ja näyttää siltä, ​​että vaikka sinulla on array kuten tämä kaveri täällä 592 00:42:59,000 --> 00:43:03,000 jos sinulla on, b ja c avaimina 593 00:43:03,000 --> 00:43:09,000 ja sitten aloitat array push tapa alkaa käyttää tätä array kuten pino- 594 00:43:09,000 --> 00:43:12,000 joten voit nähdä, että tämä ryhmä vastustaa, matriisi on todella ylikuormittaa. 595 00:43:12,000 --> 00:43:15,000 Voimme käyttää sitä array. Voimme käyttää sitä hash taulukon. 596 00:43:15,000 --> 00:43:19,000 Voimme käyttää sitä pino. 597 00:43:19,000 --> 00:43:22,000 Kun käynnistät kiire päälle tämän taulukon 598 00:43:22,000 --> 00:43:30,000 ensimmäinen asia painat päälle tämä on indeksi 0 ja sitten indeksi 1 ja indeksi 2. 599 00:43:30,000 --> 00:43:33,000 Voit saada tällainen implisiittinen sukupolven avaimet 600 00:43:33,000 --> 00:43:38,000 ellet määritä niitä erikseen. 601 00:43:38,000 --> 00:43:43,000 Miten määrittelet avaimet nimenomaisesti, tietenkin, on käyttää tätä kiinnike notaatio, 602 00:43:43,000 --> 00:43:48,000 joka on samanlainen kuin paneelit paitsi sen sijaan sallii vain 603 00:43:48,000 --> 00:43:54,000 kokonaisluku indeksit tänne, nyt annamme jotain. 604 00:43:54,000 --> 00:43:57,000 Jos haluat avaimen olla merkkijono, haluat määrittää sen näin. 605 00:43:57,000 --> 00:44:06,000 Jos haluat olla int, voit määrittää sen int haluat käyttää. 606 00:44:06,000 --> 00:44:13,000 >> Kysymyksiä, jotka tähän mennessä? 607 00:44:13,000 --> 00:44:18,000 Yksi mukavia asioita tämän ajatuksen 608 00:44:18,000 --> 00:44:26,000 on, että voit aina vain yksi arvo tallennetaan tietty avain. 609 00:44:26,000 --> 00:44:32,000 Jos me palata meidän laite-haluan poistaa joitakin tätä kamaa. 610 00:44:32,000 --> 00:44:47,000 Ja sanokaamme I alustaa array olla 0, 1, 2, tehty. 611 00:44:47,000 --> 00:44:55,000 Jos minä nyt tiedä, että esimerkiksi, jos toistan $ arr [0] 612 00:44:55,000 --> 00:44:59,000 Aion saada arvon 0 tulostettu, 613 00:44:59,000 --> 00:45:05,000 ja koska siellä voi vain olla yksi arvo säilytetään tietty avaimen 614 00:45:05,000 --> 00:45:11,000 jos tallentaa jotain $ arr [0], sano, 615 00:45:11,000 --> 00:45:16,000 Sitten tiedän kun olen echo $ arr [0] uudelleen 616 00:45:16,000 --> 00:45:19,000 En aio saada 0 tulostaa kuin ennen. 617 00:45:19,000 --> 00:45:24,000 Olen vain menossa. 618 00:45:24,000 --> 00:45:30,000 Joten tämä on periaatteessa sanoa, että en voi olla $ arr [0] tallentamista 2 eri arvoja. 619 00:45:30,000 --> 00:45:34,000 Se ei voi tallentaa sekä 0 ja merkkijono, kuten tämä kirjaimellisesti korvaa 620 00:45:34,000 --> 00:45:38,000 Mikä oli $ arr [0] aikaisemmin. 621 00:45:38,000 --> 00:45:43,000 Syy tuon tähän asti on ajaa se, mitä tapahtuu. 622 00:45:43,000 --> 00:45:47,000 Katso tästä, että sain 0 tulostaa ja sitten tänne. 623 00:45:47,000 --> 00:45:51,000 Ei ole uusi rivi siellä, koska olin laiska ja ei laittanut että sisään 624 00:45:51,000 --> 00:45:54,000 Mitä viileä tästä on voimme käyttää tätä tapaa 625 00:45:54,000 --> 00:46:00,000 vangita tämä ajatus joukon 626 00:46:00,000 --> 00:46:07,000 jossa emme voi olla useita avaimia sisällä array. 627 00:46:07,000 --> 00:46:10,000 Emme voi olla identtisiä avaimia sisällä array. 628 00:46:10,000 --> 00:46:17,000 En voi olla avain 0 ja arvon 1 ja 0-näppäintä ja arvo 629 00:46:17,000 --> 00:46:21,000 tai näppäintä 0 ja arvon true. 630 00:46:21,000 --> 00:46:27,000 Avaimet ovat kaikki siellä on vain 1 avain array. 631 00:46:27,000 --> 00:46:32,000 Vaikka sinulla voi olla sama arvo tallennetaan 632 00:46:32,000 --> 00:46:35,000 useita kertoja ryhmän eri avaimia 633 00:46:35,000 --> 00:46:42,000 se ei ole mahdollista saada samat avaimet useita kertoja PHP array. 634 00:46:42,000 --> 00:46:47,000 >> Jos tarkastelemme tätä seuraava ongelma, unique.php, 635 00:46:47,000 --> 00:46:51,000 jos haluamme avata PHP tiedosto 636 00:46:51,000 --> 00:46:54,000 sisältää luettelon merkkijonoja, yksi merkkijono per rivi 637 00:46:54,000 --> 00:47:01,000 ja haluamme löytää kaikki ainutlaatuisia jousille että tiedosto 638 00:47:01,000 --> 00:47:06,000 kaikki mitä on tehtävä on käyttää jotakin näistä PHP paneelit 639 00:47:06,000 --> 00:47:12,000 ja käyttää merkkijonot tiedostoon avaimet tähän array 640 00:47:12,000 --> 00:47:17,000 ja Päivitämme array me tallentaa nämä uudet avaimet. 641 00:47:17,000 --> 00:47:22,000 Kun luemme jokaisen rivin pois tiedoston voimme tallentaa sen array, 642 00:47:22,000 --> 00:47:28,000 ja lopussa meillä on meidän avaimet meidän array 643 00:47:28,000 --> 00:47:34,000 kaikki ainutlaatuisia merkkijonoja tiedostoon. 644 00:47:34,000 --> 00:47:37,000 Onko siinä järkeä? 645 00:47:37,000 --> 00:47:41,000 Katsotaanpa, miten tämä toimii. 646 00:47:41,000 --> 00:47:49,000 Aiomme avata, mukaan spec, uusi tiedosto nimeltä unique.php. 647 00:47:49,000 --> 00:47:58,000 Avaa. Anteeksi, uuden tiedoston. 648 00:47:58,000 --> 00:48:03,000 Aiomme aloittaa se pois samalla alku ja loppu tageja. 649 00:48:03,000 --> 00:48:17,000 Aiomme tallentaa sen 9 §, ja aiomme kutsua sitä unique.php. 650 00:48:17,000 --> 00:48:25,000 Okei, nyt Lähennä 651 00:48:25,000 --> 00:48:32,000 Ideana on avata tiedosto, 652 00:48:32,000 --> 00:48:38,000 luetaan tiedostoa rivi riviltä. 653 00:48:38,000 --> 00:48:46,000 Kunkin rivin tiedostoon 654 00:48:46,000 --> 00:48:51,000 meillä on joukko, jossa meillä 655 00:48:51,000 --> 00:49:03,000  riviä keskeisiä. 656 00:49:03,000 --> 00:49:09,000 Ja sitten kun pääsemme loppuun täällä 657 00:49:09,000 --> 00:49:17,000 $ Arr avaimet ovat ainutlaatuisia linjat 658 00:49:17,000 --> 00:49:25,000 tiedostosta, koska tiedämme, että jos laitan line tähän array 659 00:49:25,000 --> 00:49:33,000 useita kertoja se vain pitää pakottava vanha arvo 660 00:49:33,000 --> 00:49:46,000 ja voimme todellakin laittaa array linjaa kuin itse vain. 661 00:49:46,000 --> 00:49:48,000 >> Tämä on outo. 662 00:49:48,000 --> 00:49:52,000 Olemme tallennetaan sama avaimen arvo parin uudestaan ​​ja uudestaan, 663 00:49:52,000 --> 00:50:00,000 mutta koska me taataan, että siellä on vain 1 avain kutsutaan rivi 664 00:50:00,000 --> 00:50:05,000 joten jos meillä on tiedosto, joka kertoo-tiedoston eläinten ääniä ja se on hau, hau, 665 00:50:05,000 --> 00:50:11,000 Miau, miau, moo, moo, ja joka kerta me lukea eläimen ääntä ulos 666 00:50:11,000 --> 00:50:15,000 kuten hau ja me tallentaa sen meidän array saamme Hau, ja sitten toisen kerran 667 00:50:15,000 --> 00:50:20,000 Tallennamme woof se korvaa ensimmäinen kerta, kun se on tallennettu. 668 00:50:20,000 --> 00:50:25,000 Lopulta me vain yksi merkintä array 669 00:50:25,000 --> 00:50:33,000 kunkin eläimen ääniä meidän eläinten ääniä tiedosto. 670 00:50:33,000 --> 00:50:41,000 Oletteko te luottaa siihen, että voit käsitellä avaamista tiedoston PHP? 671 00:50:41,000 --> 00:50:45,000 Yksi tapa tehdä se, mennään yli tämän nopeasti-yksi tapa tehdä se 672 00:50:45,000 --> 00:50:50,000 on kanssa fopen kuten näimme aikaisemmin. 673 00:50:50,000 --> 00:50:55,000 Voit fopen some_file.txt. 674 00:50:55,000 --> 00:50:59,000 Voit avata sen lukutilassa, aivan kuten C. 675 00:50:59,000 --> 00:51:02,000 Se on yksi aivan hyvä tapa tehdä se. 676 00:51:02,000 --> 00:51:05,000 Voit myös sitten lukemista tiedostoon rivi 677 00:51:05,000 --> 00:51:12,000 on samat toiminnot, monet heistä, jotka teitte C. 678 00:51:12,000 --> 00:51:14,000 Sinulla on fgets. 679 00:51:14,000 --> 00:51:17,000 Sinulla on feof, vaikka emme pidä käyttää, että 680 00:51:17,000 --> 00:51:22,000 koska muistan, että ei ollut suuri C. 681 00:51:22,000 --> 00:51:25,000 Voit tehdä sen samalla tavalla, 682 00:51:25,000 --> 00:51:34,000 mutta tässä on todella cool juttu. 683 00:51:34,000 --> 00:51:41,000 Anteeksi, en halua tehdä $ tiedosto, mutta toiminto nimeltään tiedoston PHP, 684 00:51:41,000 --> 00:51:47,000 ja tämä toiminto täällä on siistiä, koska se lukee koko sisältö 685 00:51:47,000 --> 00:51:52,000 ja tiedostosta, niin some_file.txt, 686 00:51:52,000 --> 00:51:56,000 lukee koko sisältö tiedoston array 687 00:51:56,000 --> 00:52:03,000 ja sitten voit toistaa sen yli, mikä on melko näppärä. 688 00:52:03,000 --> 00:52:07,000 >> Jos menemme, esimerkiksi web-selaimen 689 00:52:07,000 --> 00:52:14,000 ja katsomme Google PHP tiedosto 690 00:52:14,000 --> 00:52:23,000 näet tästä, että meidän käsikirja sanoo, että tiedosto lukee koko tiedoston array, 691 00:52:23,000 --> 00:52:27,000 ja voimme file_get_contents palauttaa tiedoston sisällön merkkijonona, 692 00:52:27,000 --> 00:52:30,000 mutta yleensä vain saada se joukko on todella mukavaa, koska mitä se tekee 693 00:52:30,000 --> 00:52:33,000 on se rikkoo sen niin, että jokainen elementti 694 00:52:33,000 --> 00:52:37,000 pakassa on yksi rivi tiedoston, 695 00:52:37,000 --> 00:52:41,000 joten jos katsomme tiedoston 0, joka on ensimmäinen rivi tiedoston. 696 00:52:41,000 --> 00:52:46,000 Tiedosto 1, toinen rivi, tiedosto 2, kolmas rivi, ja niin edelleen ja niin edelleen. 697 00:52:46,000 --> 00:52:50,000 Eikö olisi hienoa, jos se oli kaikki mitä piti tehdä C? 698 00:52:50,000 --> 00:52:53,000 Aika näppärä. 699 00:52:53,000 --> 00:52:59,000 David osoitti tämän luennon, ja muotokieli hän osoitti oli 700 00:52:59,000 --> 00:53:03,000 että sen lisäksi meidän standardi loop-in PHP meillä oli, että 701 00:53:03,000 --> 00:53:09,000 for ($ i = 0; i <10; i + +), 702 00:53:09,000 --> 00:53:16,000 ja voit tehdä tämän PHP myös saman- 703 00:53:16,000 --> 00:53:27,000 meillä on myös tämän jäähtyä rakennelma nimeltään foreach. 704 00:53:27,000 --> 00:53:32,000 Foreach on todella kätevä, kun iteroimalla yli pakkoja tai näiden tietorakenteet 705 00:53:32,000 --> 00:53:36,000 koska sen avulla voit vetää pois jokaisen alkiota 706 00:53:36,000 --> 00:53:42,000 ilman käsin tehdä indeksointi itse, 707 00:53:42,000 --> 00:53:46,000 ilman käsin luoda indeksin muuttuja, kasvattaa se, 708 00:53:46,000 --> 00:53:51,000 vedä arvo array tässä vaiheessa, koska se on hyvin yleinen asia tehdä. 709 00:53:51,000 --> 00:53:54,000 >> Olet luultavasti tehnyt että tonneittain kertaa, kun olit tekemässä C juttuja 710 00:53:54,000 --> 00:54:00,000 yli lukukauden, joten tässä foreach 711 00:54:00,000 --> 00:54:06,000 voimme silmukan yli tämän tiedoston array, 712 00:54:06,000 --> 00:54:12,000 ja syntaksi on, että haluamme nyt silmukan yli tämän taulukon 713 00:54:12,000 --> 00:54:18,000 ja täsmennetään, että muuttuja aiomme käyttää tallentaa 714 00:54:18,000 --> 00:54:27,000 osa tätä array paikallisesti, paikallista kuulu tämän foreach silmukan, 715 00:54:27,000 --> 00:54:32,000 on aiomme kutsua sitä linjaa. 716 00:54:32,000 --> 00:54:38,000 Jos se tiedosto vain sanojen ja siellä on yksi sana rivillä 717 00:54:38,000 --> 00:54:43,000 Voisimme kutsua sitä sanaa myös, oikeastaan ​​vain annat tämän nimi, 718 00:54:43,000 --> 00:54:49,000 mitä haluat kutsua sitä, 719 00:54:49,000 --> 00:55:02,000 ja sitten sisällä silmukan, voit tehdä mitä haluat tämän linjan vaihtelevan. 720 00:55:02,000 --> 00:55:08,000 Jos se ei riitä saamaan arvoon array ja haluat myös saada 721 00:55:08,000 --> 00:55:17,000 indeksi sen mukana voit määrittää nimen indeksin 722 00:55:17,000 --> 00:55:22,000 sekä arvo, ja nyt sinulla on mahdollisuus saada 2 muuttujia. 723 00:55:22,000 --> 00:55:26,000 Sinulla on $ i ja linja 724 00:55:26,000 --> 00:55:30,000 missä $ i on indeksi pakassa, 725 00:55:30,000 --> 00:55:38,000 ja linja on linja, että noudetaan tiedosto. 726 00:55:38,000 --> 00:55:49,000 Esimerkiksi, jos halusimme tulostaa echo rivillä 0 tiedoston tähän, 727 00:55:49,000 --> 00:55:57,000 voisimme tehdä sen aivan kuten tämä "Line $ i tiedoston $ rivi" 728 00:55:57,000 --> 00:56:02,000 ja tässä me myös ole nähneet vielä myöskään 729 00:56:02,000 --> 00:56:13,000 missä olen totaalisesti ohitetaan tämä koko% s% d liiketoiminnan 730 00:56:13,000 --> 00:56:16,000 että jouduimme käsittelemään C, ja sen sijaan olen mennyt suoraan 731 00:56:16,000 --> 00:56:19,000 kirjallisesti muuttujat linjassa minun merkkijono. 732 00:56:19,000 --> 00:56:23,000 >> Tätä kutsutaan muuttuja interpoloimalla, string interpolointi 733 00:56:23,000 --> 00:56:26,000 missä olet täytteenä muuttujat oikeassa, ja PHP tulkin 734 00:56:26,000 --> 00:56:31,000 on fiksu kun se lukee läpi merkkijono, joka alkaa lainausmerkkeihin- 735 00:56:31,000 --> 00:56:34,000 ei lainausmerkkejä, yhdellä lainattu jouset, et voi tehdä tätä, 736 00:56:34,000 --> 00:56:38,000 mutta kaksinkertainen lainattu jouset kuin se lukee sen läpi etsii muuttujia. 737 00:56:38,000 --> 00:56:42,000 Se metsästys heitä, ja jos se näkee muuttujia kestää muuttujan arvo 738 00:56:42,000 --> 00:56:47,000 ja tavaraa sen merkkijonon jos se voi muuntaa sen merkkijono edustus, 739 00:56:47,000 --> 00:56:51,000 joka on melko näppärä. 740 00:56:51,000 --> 00:56:56,000 Nyt mennään kommentoida pois muusta kaikesta, 741 00:56:56,000 --> 00:57:00,000 tallentaa, ja mitä voimme tehdä nyt voimme avata tiedoston 742 00:57:00,000 --> 00:57:06,000 että voimme kutsua some_file.txt-let 's luoda uuden tiedoston, 743 00:57:06,000 --> 00:57:15,000 ja voimme laittaa nippu roskaa tavaraa täällä vain testata kaiken pois, 744 00:57:15,000 --> 00:57:25,000 tallentaa, kutsua sitä some_file.txt, koska teen täällä ylhäällä, 745 00:57:25,000 --> 00:57:33,000 ja nyt jos olen loitontaa vain varmistaa, että kaikki on samassa hakemistossa, 746 00:57:33,000 --> 00:57:36,000 se näyttää olen unique.php ja some_file.txt samassa hakemistossa. 747 00:57:36,000 --> 00:57:42,000 Jos juoksen php unique.php 748 00:57:42,000 --> 00:57:51,000 miten se tulostuu jokaisen rivin minun tiedostoon ja mikä linja on? 749 00:57:51,000 --> 00:57:56,000 >> Se on aika voimakas, eikö? 750 00:57:56,000 --> 00:58:03,000 Katso, se kesti 3 riviä koodia avata tiedostoa. 751 00:58:03,000 --> 00:58:08,000 No, 4 riviä koodia. En voi laskea tänään selvästi. 752 00:58:08,000 --> 00:58:13,000 Mutta oikeastaan ​​vain 2 mielenkiintoista riviä koodia, koska muut 2 olivat aaltosulkeita, 753 00:58:13,000 --> 00:58:17,000 mutta tässä paljon koodia pystyimme avaamaan tiedoston, toistaa sen kautta, 754 00:58:17,000 --> 00:58:20,000 vedä rivin numero ja rivi itse 755 00:58:20,000 --> 00:58:24,000 ja tulostaa sen. 756 00:58:24,000 --> 00:58:26,000 Cool stuff. Charlotte. 757 00:58:26,000 --> 00:58:28,000 [Charlotte] Minulla on kysymys syntaksi. 758 00:58:28,000 --> 00:58:33,000 Joten foreach käsittelee jokaisen rivin tiedoston avaat, 759 00:58:33,000 --> 00:58:37,000 ja sitten kun haluat tehdä asioita joka ikinen viiva juuri tee sitä 760 00:58:37,000 --> 00:58:39,000 ja sitten liittää arvo. 761 00:58:39,000 --> 00:58:41,000 [Nate H.] Mitä voit tehdä täällä-kysymys oli 762 00:58:41,000 --> 00:58:46,000 foreach on tekemistä array, joten foreach syntaksia 763 00:58:46,000 --> 00:58:51,000 on todella foreach, ja huomaa, että ei ole tilaa 764 00:58:51,000 --> 00:58:53,000 tai jotain väliin osalta ja kunkin. 765 00:58:53,000 --> 00:58:56,000 Heillä on mennä oikealle vierekkäin, 766 00:58:56,000 --> 00:59:00,000 ja sitten se vie ryhmäksi, 767 00:59:00,000 --> 00:59:05,000 ja sitten on tämä toinen avainsana kutsutaan se on siellä, 768 00:59:05,000 --> 00:59:11,000 ja sitten sen jälkeen kuin voit joko laittaa yhden muuttujan nimi, 769 00:59:11,000 --> 00:59:14,000 jolloin aiot olla vetämällä arvot array, 770 00:59:14,000 --> 00:59:20,000 ei indekseihin, tai jos teet sen olemme kirjoittaneet alla 771 00:59:20,000 --> 00:59:24,000 saat avaimet ja arvot. 772 00:59:24,000 --> 00:59:33,000 Teillä on foreach alkiota tai parin array kiilattu arvo 773 00:59:33,000 --> 00:59:38,000 tai vain arvo. 774 00:59:38,000 --> 00:59:40,000 Riippuen siitä, mitä tarvitset, jos et tarvitse avaimia, 775 00:59:40,000 --> 00:59:42,000 voit mennä arvoa. 776 00:59:42,000 --> 00:59:45,000 Jos haluat avaimet voit mennä heidän kanssaan. 777 00:59:45,000 --> 00:59:48,000 >> [Charlotte] Tajusin myös emme koskaan julistettu i tai linjaa. 778 00:59:48,000 --> 00:59:51,000 Miten se edes tiedä, mitä ne ovat? 779 00:59:51,000 --> 00:59:53,000 [Nate H.] Mitä tarkoitat julistaa? 780 00:59:53,000 --> 00:59:57,000 [Charlotte] Emme koskaan kertonut heille, mitä minä tai linja keinoin. 781 00:59:57,000 --> 01:00:01,000 [Nate H.] Emme koskaan kertonut tietokone mitä olen tai viiva tarkoittaa kannalta- 782 01:00:01,000 --> 01:00:05,000 [Charlotte], että he indeksoitu tai että He- 783 01:00:05,000 --> 01:00:09,000 [Nate H.] Emme koskaan kertonut sitä, että tämän pitäisi olla indeksi tai avain ja arvo, 784 01:00:09,000 --> 01:00:13,000 ja se johtuu siitä, että on PHP tulkki. 785 01:00:13,000 --> 01:00:17,000 Tämä toimii julistuksen ja sanoo okei, avain tulee olemaan 786 01:00:17,000 --> 01:00:20,000 muuttuja nimeltään i tallennetaan muuttujaan nimeltä i. 787 01:00:20,000 --> 01:00:24,000 Arvo tulee olemaan tallennettu muuttuja nimeltä linja, 788 01:00:24,000 --> 01:00:28,000 joten tämä toimii ilmoitusta näiden muuttujien 789 01:00:28,000 --> 01:00:35,000 ja sanoo $ i on avain, ja $ rivi on arvo. 790 01:00:35,000 --> 01:00:37,000 Joo, Ella. 791 01:00:37,000 --> 01:00:41,000 [Ella] Jos näppäimet eivät tehneet numeerisesti 792 01:00:41,000 --> 01:00:44,000 miten se päättää, missä järjestyksessä se tulee tulostaa kaiken? 793 01:00:44,000 --> 01:00:47,000 Onko se aivan kuten järjestys se merkitään? 794 01:00:47,000 --> 01:00:51,000 [Nate H.] Mennään kokeilemaan sitä. 795 01:00:51,000 --> 01:00:57,000 Luodaan muuttuja nimeltä arr, 796 01:00:57,000 --> 01:01:06,000 ja voimme tehdä menee 7. 797 01:01:06,000 --> 01:01:19,000 Sanotaan 0 menee toiselle array 1, 2 tai omena. 798 01:01:19,000 --> 01:01:30,000 Sanotaan 7 menee 1, b menee 2, 799 01:01:30,000 --> 01:01:39,000 ja 3 menee 4. 800 01:01:39,000 --> 01:01:44,000 Tämä on eräänlainen hullu näköinen esimerkki, koska olemme sekoittaa 801 01:01:44,000 --> 01:01:47,000 jouset ja kokonaislukuja koko paikka. 802 01:01:47,000 --> 01:01:50,000 Ei ole todellista, jotta tämä array. 803 01:01:50,000 --> 01:01:55,000 Tarkoitan, että voisimme tilata kaikki aakkosjärjestyksessä avaimet. 804 01:01:55,000 --> 01:01:57,000 Voisimme tilata kaiken aakkosjärjestykseen arvon. 805 01:01:57,000 --> 01:02:00,000 >> Voisimme yrittää ottaa huomioon, että jotkut ovat merkkijonoja, jotkut ovat ints, 806 01:02:00,000 --> 01:02:03,000 ja voisimme yrittää muuntaa ne kaikki samaa tyyppiä ja katso mitä tapahtuu, 807 01:02:03,000 --> 01:02:09,000 tai voisimme harkita niitä arvon, jonka olemme jo tulleet heille 808 01:02:09,000 --> 01:02:14,000 jos panemme tämän kaveri ensin tämä kaveri toisella, tämä kaveri on kolmas, 809 01:02:14,000 --> 01:02:19,000 tämä kaveri neljäntenä, jne.. 810 01:02:19,000 --> 01:02:23,000 Katsotaan mitä tapahtuu, kun otamme tämän koodin. 811 01:02:23,000 --> 01:02:29,000 Jos me selaa ja tee sama sellainen asia, 812 01:02:29,000 --> 01:02:31,000 ja täällä se ei tulostamalla uusia linjoja. 813 01:02:31,000 --> 01:02:35,000 Kun se lukea asioita ulos tiedoston se myös uusien linjojen arvoja, 814 01:02:35,000 --> 01:02:38,000 minkä vuoksi se tulostetaan kauniisti, kun taas täällä se ei ole, 815 01:02:38,000 --> 01:02:40,000 joten siksi kaikki on smushed yhteen. 816 01:02:40,000 --> 01:02:44,000 Katsotaanpa lisätä, että uusi linja vain tehdä asioita mukava. 817 01:02:44,000 --> 01:02:51,000 Katsotaanpa uusintana se, ja niin tässä 818 01:02:51,000 --> 01:02:54,000 mitä tapahtui. 819 01:02:54,000 --> 01:03:00,000 Se tulostaa kaiken pois siinä järjestyksessä, jossa laitamme sen array. 820 01:03:00,000 --> 01:03:10,000 Se säilyttää järjestyksen mielessä. 821 01:03:10,000 --> 01:03:15,000 >> Palataan tähän ongelmaan yksilöityä 822 01:03:15,000 --> 01:03:20,000 jos haluamme pystyä iteroida yli tiedosto, 823 01:03:20,000 --> 01:03:24,000 ja annamme sen some_file.txt, 824 01:03:24,000 --> 01:03:27,000 ja aiomme toistaa sen yli näin. 825 01:03:27,000 --> 01:03:31,000 Sanoimme, että halusimme käyttää array varmistaa, että olimme saaneet kaikki 826 01:03:31,000 --> 01:03:36,000 ainutlaatuinen linjat pois sieltä, ja voisimme tehdä todella helposti 827 01:03:36,000 --> 01:03:49,000 vain hieman tallentaminen joukko, että me tietenkin julistaa ulkopuolella silmukka, 828 01:03:49,000 --> 01:03:55,000 ja sanoimme, että jos käytämme rivit tiedoston avaimet meidän array 829 01:03:55,000 --> 01:03:59,000 jos tuli kaksoiskappale linjaa olisimme ohittaa edellisen arvon. 830 01:03:59,000 --> 01:04:08,000 Se ei ole koskaan mahdollista saada 2 avaimet, jotka ovat identtisiä samassa taulukossa. 831 01:04:08,000 --> 01:04:13,000 Voimme tehdä juuri niin. 832 01:04:13,000 --> 01:04:17,000 Saamme eroon tästä echo lausuma täällä. 833 01:04:17,000 --> 01:04:24,000 Täällä me tallennetaan rivi tiedostossa meidän array 834 01:04:24,000 --> 01:04:28,000 käyttäen itse avain. 835 01:04:28,000 --> 01:04:32,000 Mitään sen, ja käy ilmi, että emme edes tarvitse tätä näppäintä. 836 01:04:32,000 --> 01:04:38,000 Emme tarvis muuttuja. 837 01:04:38,000 --> 01:04:43,000 Tässä vaiheessa, jos tekisimme toista foreach silmukka 838 01:04:43,000 --> 01:04:48,000 ja olimme loop kullakin arr 839 01:04:48,000 --> 01:04:56,000 ja linja nyt jos echo-Anteeksi. 840 01:04:56,000 --> 01:05:00,000 Emme voi käyttää pilkkua. Meidän täytyy käyttää tätä avainsanaa. 841 01:05:00,000 --> 01:05:05,000 Nyt jos me echo linjaa meidän pitäisi saada kaikki ainutlaatuisia sanoja tiedostoon. 842 01:05:05,000 --> 01:05:10,000 Jos me mennä jopa some_file.txt, 843 01:05:10,000 --> 01:05:19,000 ja sanotaanko teemme omena, banaani, omena, omena, banaani, 844 01:05:19,000 --> 01:05:22,000 jos me tulostaa kaikki ainutlaatuisia sanoja tämän tiedoston pitäisi vain saada 845 01:05:22,000 --> 01:05:30,000 omena ja banaani tulostaa. 846 01:05:30,000 --> 01:05:36,000 Jos me tallentaa, nyt me zoomata takaisin, 847 01:05:36,000 --> 01:05:44,000 php unique.php, ja ta-da. 848 01:05:44,000 --> 01:05:51,000 Olemme onnistuneesti uniqued tiedosto. 849 01:05:51,000 --> 01:05:55,000 >> Viimeinen osa tätä ongelmaa ei pyydä sinua lajitella tämän array ennen kuin tulostetaan ulos 850 01:05:55,000 --> 01:05:58,000 koska tämä yksinkertainen esimerkki siitä, että olemme juuri tehneet 851 01:05:58,000 --> 01:06:04,000 olimme onnekkaita siinä mielessä, että tiedosto- 852 01:06:04,000 --> 01:06:06,000 teimme tämän teennäinen esimerkiksi omenat ja banaanit. 853 01:06:06,000 --> 01:06:08,000 Se oli jo järjestetty. 854 01:06:08,000 --> 01:06:19,000 Mutta käyttämällä yksinkertaista lajittelutoiminto voit lajitella taulukon, joka on melko näppärä. 855 01:06:19,000 --> 01:06:24,000 Viimeinen asia halusin puhua teidän kanssanne siitä todella nopeasti 856 01:06:24,000 --> 01:06:31,000 että tällainen PHP on kaikki hyvin ja hyvä, ja se on erittäin kätevä 857 01:06:31,000 --> 01:06:43,000 osata tehdä, jos joudut tekemään vähän nopeasti asioita ohjelmallisesti. 858 01:06:43,000 --> 01:06:48,000 Esimerkiksi, jos minun täytyy kirjoittaa ohjelma, eli 859 01:06:48,000 --> 01:06:53,000 asettaa kaikille osiin en aio mennä ja kirjoittaa se C 860 01:06:53,000 --> 01:06:55,000 Se tulee olemaan pitkä. 861 01:06:55,000 --> 01:06:57,000 Se tulee olemaan eräänlainen kipua, varsinkin jos on tiedostoja mukana, 862 01:06:57,000 --> 01:07:00,000 aivan kuten te olette nähneet. 863 01:07:00,000 --> 01:07:05,000 Se on niin mukavaa, että vain tämä paljon koodia täällä 864 01:07:05,000 --> 01:07:08,000 pystyimme rip kautta tiedoston, vedä kaikki ainutlaatuisia arvoja 865 01:07:08,000 --> 01:07:11,000 ja tulostaa ne takaisin ulos. 866 01:07:11,000 --> 01:07:16,000 >> Kuitenkin teidän tehtäviä, projekteihin, 867 01:07:16,000 --> 01:07:20,000 Jos olet rakentamassa sivustoja PHP voima on, että 868 01:07:20,000 --> 01:07:25,000 olemme käynnissä meidän PHP-tiedostoja tällä tulkin- 869 01:07:25,000 --> 01:07:29,000 ja tulkki käsittelee kaiken PHP tunnisteet, 870 01:07:29,000 --> 01:07:34,000 jolloin kaikki muu koskematon ja sylkee tuloksia. 871 01:07:34,000 --> 01:07:40,000 Voimme tehdä tämän rakentaa HTML ohjelmallisesti. 872 01:07:40,000 --> 01:07:46,000 Nyt, jos menemme takaisin spec, viimeinen ongelma spec 873 01:07:46,000 --> 01:07:56,000 puhuu tästä ajatuksesta pitoisuuksien 874 01:07:56,000 --> 01:08:01,000 ja luoda pudotusvalikosta, 875 01:08:01,000 --> 01:08:06,000 joka voi tai halua tehdä, riippuen siitä, mitä opinnäytetyö on tekemässä, 876 01:08:06,000 --> 01:08:13,000 jonka avulla käyttäjä voi valita luettelosta kaikki mahdolliset pitoisuudet 877 01:08:13,000 --> 01:08:15,000 niiden yhden keskittymän. 878 01:08:15,000 --> 01:08:21,000 Nyt tämä on eräänlainen tuskaa kirjoittaa tätä ulos 879 01:08:21,000 --> 01:08:25,000 ja täytyy tehdä kaikki tämän manuaalisesti, varsinkin kun sinulla on varmistaa 880 01:08:25,000 --> 01:08:28,000 että sinulla on kaikki kulmaraudat oikeassa paikassa ja kaikki lainaukset oikeassa paikassa, 881 01:08:28,000 --> 01:08:34,000 joten PHP voit tehdä tämän ohjelmallisesti, ja voit tehdä tämän todella nopeasti. 882 01:08:34,000 --> 01:08:36,000 >> Katsotaanpa, miten tämä. 883 01:08:36,000 --> 01:08:42,000 Aiomme avata uuden tiedoston. 884 01:08:42,000 --> 01:08:46,000 Aiomme laittaa meidän PHP tageja. 885 01:08:46,000 --> 01:08:53,000 Aiomme kutsua concentrations.php, 886 01:08:53,000 --> 01:08:58,000 ja nyt kun teet tämän, sellainen hyvä miettiä 887 01:08:58,000 --> 01:09:02,000 kun yrität yhdistellä PHP ja HTML 888 01:09:02,000 --> 01:09:08,000 on miettiminen, okei, mikä on osa että haluan ohjelmallisesti luoda? 889 01:09:08,000 --> 01:09:11,000 Mikä osa voin ohjelmallisesti luoda? 890 01:09:11,000 --> 01:09:17,000 On totta, että voit tehdä kaikki HTML 891 01:09:17,000 --> 01:09:19,000 sisällä PHP lohkoja. 892 01:09:19,000 --> 01:09:24,000 Voit toistaa kaikki HTML jouset. 893 01:09:24,000 --> 01:09:30,000 Esimerkiksi, jos haluan alkaa tehdä valitse Tunnisteet sisällä PHP 894 01:09:30,000 --> 01:09:46,000 Voin sanoa kaiku, sano valitse nimi = pitoisuus, 895 01:09:46,000 --> 01:09:49,000 ja sitten alhaalla voisin olla toinen kaiku tag 896 01:09:49,000 --> 01:09:57,000 tai toinen kaiku kutsutaan lähelle valitse. 897 01:09:57,000 --> 01:10:00,000 Tämä on yksi tapa tehdä se, sillä mitä tämä on kirjaimellisesti aikoo tehdä 898 01:10:00,000 --> 01:10:09,000 on tulosta tämän merkkijonon, kun se ajaa läpi PHP tulkin, 899 01:10:09,000 --> 01:10:12,000 joten tulos on HTML. 900 01:10:12,000 --> 01:10:18,000 Jos tallennan tätä tiedostoa, koska se on juuri nyt 901 01:10:18,000 --> 01:10:24,000 ja minä ajaa php concentrations.php 902 01:10:24,000 --> 01:10:26,000 katso mitä sain. 903 01:10:26,000 --> 01:10:30,000 Sain tämän auki Sulje Valitse tunniste. 904 01:10:30,000 --> 01:10:36,000 >> Jos tekisin tätä ja minä tallentaa tämän tuloksen tiedostoon, 905 01:10:36,000 --> 01:10:45,000 sanoa, concentrations.html-odotus, se näyttää l on siirtynyt toiselle puolelle, 906 01:10:45,000 --> 01:11:02,000 Nyt jos avaan tänne concentrations.html näet olen kelvollinen HTML-tiedoston. 907 01:11:02,000 --> 01:11:05,000 Onko tämä outo? 908 01:11:05,000 --> 01:11:09,000 Olemme PHP luoda HTML, luoda pätevä HTML. 909 01:11:09,000 --> 01:11:13,000 Miten teemme sen on me vain ottaa PHP Print 910 01:11:13,000 --> 01:11:16,000 HTML että haluamme tulostaa. 911 01:11:16,000 --> 01:11:20,000 Tämä on kirjaimellisesti miten PHP sivustot toimivat. 912 01:11:20,000 --> 01:11:24,000 Kun käyt sivustossa, joka lähettää sinut jotain 913 01:11:24,000 --> 01:11:30,000 jotain, jotain, jotain dot com slash index.php 914 01:11:30,000 --> 01:11:33,000 tietokone on kirjaimellisesti poimimalla index.php, 915 01:11:33,000 --> 01:11:38,000 käynnissä läpi PHP tulkin, ja mitä roskaruokaa tulee ulos 916 01:11:38,000 --> 01:11:49,000 se lähettää takaisin selaimen ja sanoo hei, selain, tulkitsen tämän HTML. 917 01:11:49,000 --> 01:11:54,000 Kiva juttu on, että se voi olla tuskaa jatkuvasti kirjoittaa kaiku, kaiku, kaiku, kaiku 918 01:11:54,000 --> 01:11:59,000 ja liittää kaikki lainausmerkit näin, joten jos haluat kirjoittaa 919 01:11:59,000 --> 01:12:04,000 HTML että tulee olemaan staattinen itse voit tehdä sen näin, 920 01:12:04,000 --> 01:12:16,000 laittaa sen ulkopuolella, sulje se, 921 01:12:16,000 --> 01:12:21,000 ja sitten täällä vain laittaa sisälle PHP tageja, joka tiedät 922 01:12:21,000 --> 01:12:26,000 haluat ohjelmallisesti luoda, ja tässä tapauksessa se on näiden optio tageja 923 01:12:26,000 --> 01:12:31,000 jotka ovat kipu tuottaa. 924 01:12:31,000 --> 01:12:37,000 >> Esimerkiksi voisimme tuottaa tuhat vaihtoehto tageja 925 01:12:37,000 --> 01:12:48,000 tekemällä jotain tällaista, $ i <1000, i + + 926 01:12:48,000 --> 01:13:00,000 ja sanomalla echo vaihtoehto value = $-Oho, en voi tehdä sitä. 927 01:13:00,000 --> 01:13:03,000 No, katsotaanpa kokeilla sitä ja katso mitä tapahtuu. 928 01:13:03,000 --> 01:13:22,000 $ I ja sitten sanomalla $ i 01:13:27,000 Sen sijaan, kirjoittaa, että vaihtoehto tag tuhat eri aikoina 930 01:13:27,000 --> 01:13:33,000 Käytän PHP tuottaa automaattisesti, ohjelmallisesti. 931 01:13:33,000 --> 01:13:38,000 Kind of näppäriä. Joo. 932 01:13:38,000 --> 01:13:41,000 Muistan tämän mainitsemista joko luennolla tai esittely, 933 01:13:41,000 --> 01:13:43,000 mutta mitä eroa lainausmerkeissä 934 01:13:43,000 --> 01:13:45,000 normaali niistä ja nämä sinkku asioita? 935 01:13:45,000 --> 01:13:49,000 Se on todella jotain, että olen tehnyt väärin täällä, että olin menossa näyttämään. 936 01:13:49,000 --> 01:13:52,000 Puolilainausmerkkejä eivät salli mitään erikoismerkkejä, 937 01:13:52,000 --> 01:13:57,000 joten kaikki sisällä yhden noteerattu merkkijono tulkitaan kirjaimellisesti. 938 01:13:57,000 --> 01:14:02,000 Jos minulla olisi \ n sisällä puolilainausmerkkejä enkä tallentaa esimerkiksi 939 01:14:02,000 --> 01:14:07,000 ja nyt minä menen tänne ja suorita se- 940 01:14:07,000 --> 01:14:12,000 Oho, minne olen menossa? 941 01:14:12,000 --> 01:14:19,000 Voi, se on koska unohdin $. 942 01:14:19,000 --> 01:14:25,000 >> Nyt jos avaan ylös-todellisuudessa, täällä, me eroon kirjoittamalla sen tiedoston. 943 01:14:25,000 --> 01:14:27,000 Me vain lukea sitä. 944 01:14:27,000 --> 01:14:34,000 Täällä näet että olen saanut tämän kirjaimellinen \ n vuonna merkkijono, kuten ei todellista uutta linjaa, 945 01:14:34,000 --> 01:14:38,000 ja samoin, sen sijaan, että itse asiassa interpoloimalla arvo tämän muuttujan 946 01:14:38,000 --> 01:14:42,000 se antoi minulle $ i itse, mikä on tavallaan kipua. 947 01:14:42,000 --> 01:14:46,000 Tapa kiertää tämä on käyttää lainausmerkkeihin, 948 01:14:46,000 --> 01:14:52,000 ja sitten kun käytät lainausmerkkejä sitä todella 949 01:14:52,000 --> 01:14:56,000 asianmukaisesti interpoloida arvot kaikkien näiden muuttujien tästä 950 01:14:56,000 --> 01:14:59,000 ja tunnustavat myös tämän \ n olevan uusi rivi, joka on 951 01:14:59,000 --> 01:15:02,000 eikä \ n. 952 01:15:02,000 --> 01:15:07,000 Käyttämällä yhden niistä on mukavaa kun olet 953 01:15:07,000 --> 01:15:10,000 merkit, jotka voitaisiin tulkita erikoismerkkejä, koska sinun ei tarvitse 954 01:15:10,000 --> 01:15:15,000 paeta niitä jatkuvasti. 955 01:15:15,000 --> 01:15:18,000 Asiat voi saada sotkuinen, ja usein niin teen sen, 956 01:15:18,000 --> 01:15:24,000 vain tehdä asiat helposti, että jos aion olla mitään 957 01:15:24,000 --> 01:15:31,000 HTML kuten minun koodin minä myös muokkaa sisällä puolilainausmerkkejä 958 01:15:31,000 --> 01:15:36,000 ja sitten käyttää tätä Ketjutusmerkki 959 01:15:36,000 --> 01:15:43,000 ja liität muuttujien sisään 960 01:15:43,000 --> 01:15:47,000 Tämä on toinen tapa tehdä se 961 01:15:47,000 --> 01:15:52,000 jossa meillä piste, joka tulee kytkeä tämä on merkkijono 962 01:15:52,000 --> 01:15:56,000 Tämän tämän kanssa tämän, 963 01:15:56,000 --> 01:15:59,000 ja nyt minun ei tarvitse paeta näitä lainausmerkkeihin. 964 01:15:59,000 --> 01:16:02,000 Minun ei tarvitse käyttää tätä kaveri paeta. 965 01:16:02,000 --> 01:16:08,000 He kirjaimellisesti tulostaa niin lainausmerkit ja sitten tämä kaveri täällä. 966 01:16:08,000 --> 01:16:11,000 Tämä on toinen tapa sekoittamalla kaikki yhteen. 967 01:16:11,000 --> 01:16:14,000 >> [Student] Lisäksi, kun toisti getType ei ollut lainausmerkeissä ollenkaan. 968 01:16:14,000 --> 01:16:22,000 Oikea, joten kaiku on tavallaan erikoinen siinä mielessä, että sinun ei tarvitse sulkeisiin. 969 01:16:22,000 --> 01:16:29,000 Sinun ei tarvitse olla lainausmerkit välttämättä ympärillä muuttujia, 970 01:16:29,000 --> 01:16:37,000 kuin se on voimassa sanoa echo $ i, ja se tulee tulkita tämän merkkijono. 971 01:16:37,000 --> 01:16:44,000 Se tulee tehdä valettu, jotta voisimme tehdä tämän, ja se on voimassa myös, mutta emme tarvitse sitä. 972 01:16:44,000 --> 01:16:48,000 Se on vapaaehtoinen. 973 01:16:48,000 --> 01:16:53,000 Tällä viikolla Harjoitus varoa paljon tällaista kamaa 974 01:16:53,000 --> 01:16:58,000 missä olet yhdistelemällä HTML PHP 975 01:16:58,000 --> 01:17:08,000 aivan kuten tämä, ja nyt jos selaa taaksepäin, ja otamme tämän 976 01:17:08,000 --> 01:17:13,000 voimme nähdä, että meillä on koko joukko optio-arvojen 977 01:17:13,000 --> 01:17:15,000 että juuri tulostettu. 978 01:17:15,000 --> 01:17:20,000 Olemme kaikki tämä HTML että sai syntyy todella nopeasti meille. 979 01:17:20,000 --> 01:17:22,000 Jätän sen harjoituksen. 980 01:17:22,000 --> 01:17:24,000 Se on hyvin samankaltainen tiedoston käsittelyssä, että teimme aikaisemmin. 981 01:17:24,000 --> 01:17:31,000 >> On concentrations.txt tiedosto, jonka voit vetää alas CDN, 982 01:17:31,000 --> 01:17:34,000 ja voit avata sen käyttämällä samaa foreach temppu, että teimme aikaisemmin, 983 01:17:34,000 --> 01:17:39,000 ja foreach sinun täytyy vain yhtyä vaihtoehto ja kytke 984 01:17:39,000 --> 01:17:44,000 asianmukaiset arvot, asianmukaiset avaimet ja indeksit, 985 01:17:44,000 --> 01:17:49,000 ja sitten saat pudotusvalikon, joka kirjaimellisesti luo 986 01:17:49,000 --> 01:17:54,000 ohjelmallisesti teille kaikille eri pitoisuuksia Harvardin. 987 01:17:54,000 --> 01:17:57,000 Kätevä juttu on. 988 01:17:57,000 --> 01:18:02,000 On paljon kokoonpanon juttuja tähän tehtävään. 989 01:18:02,000 --> 01:18:07,000 Jos et ole tehnyt sitä jo ottaa seuraava puoli tuntia, tunti, 990 01:18:07,000 --> 01:18:10,000 jonkin aikaa tänä iltana varmasti varmasti, 991 01:18:10,000 --> 01:18:14,000 kävellä Harjoitus spec, 992 01:18:14,000 --> 01:18:20,000 Katso mitä tapahtuu perustamiseen vhosts, paikallinen isäntä, kaikki jutut. 993 01:18:20,000 --> 01:18:24,000 Yksi asia huomauttaa nyt on, että 994 01:18:24,000 --> 01:18:30,000 Useimmissa ongelma sarjaa olemme menossa omaan Dropbox kansioon 995 01:18:30,000 --> 01:18:34,000 ja sitten lataamalla Harjoitus zip-tiedosto ja unzipping sitä. 996 01:18:34,000 --> 01:18:36,000 Tämän ongelman setti et halua. 997 01:18:36,000 --> 01:18:40,000 Haluat mennä tähän vhosts hakemistoon. 998 01:18:40,000 --> 01:18:45,000 Sinun kannattaa mennä vhosts ja mennä paikallisen isännän hakemiston sisällä, 999 01:18:45,000 --> 01:18:50,000 ja tämä on silloin sinun kannattaa vetää alas zip-tiedoston, 1000 01:18:50,000 --> 01:18:55,000 pura se ja saada valmis menemään. 1001 01:18:55,000 --> 01:18:57,000 Sinun täytyy seurata ohjeita tarkasti. 1002 01:18:57,000 --> 01:19:02,000 >> Jos sinulla on kysyttävää, lähetä sähköpostia, lähettää sen Keskustele, tulevat virka. 1003 01:19:02,000 --> 01:19:08,000 Kiitos kaverit. Ensi viikolla aiomme saada tarkistaa istuntoon tietokilpailu. 1004 01:19:08,000 --> 01:19:12,000 Nauti viimeinen ongelma asetettu. Toivottavasti kaikki menee todella hyvin. 1005 01:19:12,000 --> 01:19:14,000 [CS50.TV]