1 00:00:00,000 --> 00:00:02,000 [Powered by Google Translate] [Kafli 8] [Minna Comfortable] 2 00:00:02,000 --> 00:00:04,000 [Nate Hardison] [Harvard University] 3 00:00:04,000 --> 00:00:08,000 [Þetta er CS50.] [CS50.TV] 4 00:00:08,000 --> 00:00:11,000 >> Velkomin á annað okkar í síðasta kafla. 5 00:00:11,000 --> 00:00:13,000 Í þessari viku ætlum við að tala um PHP, og svo í næstu viku 6 00:00:13,000 --> 00:00:17,000 við munum gera smá umfjöllun um Quiz 1. 7 00:00:17,000 --> 00:00:20,000 Við ætlum að byrja á síðu 3 af vandamálinu setur pakki, 8 00:00:20,000 --> 00:00:28,000 og við munum vinna með hluta af spurningum nokkuð fljótt. 9 00:00:28,000 --> 00:00:34,000 Á síðu 3, byrjum við að tala um þennan mun á milli C og PHP 10 00:00:34,000 --> 00:00:38,000 í þeim skilningi að PHP er virk tegund tungumál, 11 00:00:38,000 --> 00:00:42,000 en C er statically tegund, 12 00:00:42,000 --> 00:00:46,000 og hefur einhver virkilega fljótt gert allir erfðaskrá í eitthvað eins og PHP 13 00:00:46,000 --> 00:00:51,000 eða Python eða Ruby áður JavaScript? 14 00:00:51,000 --> 00:00:53,000 Algerlega nýtt? Allt í lagi. 15 00:00:53,000 --> 00:00:56,000 >> Öll þessi tungumál sem ég nefndi bara 16 00:00:56,000 --> 00:01:01,000 eru mjög ólík tungumál eins og C og C + + og Java 17 00:01:01,000 --> 00:01:04,000 í þeim skilningi að þegar þú lýsa yfir breytu sem þú þarft ekki að lýsa 18 00:01:04,000 --> 00:01:09,000 hvaða breytu er, svo í C vorum föst þurfa að alltaf að segja 19 00:01:09,000 --> 00:01:13,000 þetta er að fara að vera int breytu, eða þetta er að fara til vera a char * breytu, 20 00:01:13,000 --> 00:01:16,000 en með PHP, með Python, með Ruby, 21 00:01:16,000 --> 00:01:20,000 með fullt af þessum fleiri nútíma tungumálum sem þú þarft ekki að gera það á öllum. 22 00:01:20,000 --> 00:01:24,000 Þú lýsa bara breyta þinni, og í tilfelli af PHP 23 00:01:24,000 --> 00:01:28,000 þú lýst því yfir að það er breytilegt með prefixing það með $ merki, 24 00:01:28,000 --> 00:01:35,000 og þá tegund af breytu ræðst af hvaða verðmæti það er að halda, 25 00:01:35,000 --> 00:01:38,000 sem er góður af kaldur. 26 00:01:38,000 --> 00:01:44,000 Að leika sér með þessa litlu hluti, höfum við sýnishorn PHP kóða hérna 27 00:01:44,000 --> 00:01:47,000 á milli upphafs og enda tags. 28 00:01:47,000 --> 00:01:53,000 Við erum að nota þessa tegund af eins og HTML í þeim skilningi að 29 00:01:53,000 --> 00:01:56,000 við höfum fengið þessar horn sviga hér til að opna og loka. 30 00:01:56,000 --> 00:01:58,000 Þú munt sjá það með HTML. 31 00:01:58,000 --> 00:02:03,000 Þú munt sjá sömu tegund af setningafræði með XML líka. 32 00:02:03,000 --> 00:02:06,000 >> Þetta gefur til kynna upphaf PHP blokk. 33 00:02:06,000 --> 00:02:09,000 Þetta? PHP er sérstaklega við PHP. 34 00:02:09,000 --> 00:02:16,000 Við loka allt með> eins og heilbrigður. 35 00:02:16,000 --> 00:02:22,000 Við skulum opna skrá í tækið okkar með hvað sem þú vilt. 36 00:02:22,000 --> 00:02:25,000 Í þessum pakka segir að hringja dynamic.php. 37 00:02:25,000 --> 00:02:29,000 Í sannleika, er hægt að kalla það hvað sem þú vilt, en að skrá nafn mun koma upp 38 00:02:29,000 --> 00:02:34,000 og vera mikilvægt seinna, svo bara muna hvað þú kallar það. 39 00:02:34,000 --> 00:02:36,000 Ég ætla að skipta yfir í tækið, 40 00:02:36,000 --> 00:02:43,000 og ég ætla að fara að gera möppu fyrir 41 00:02:43,000 --> 00:02:48,000 kafla 9 Ég tel að við erum á núna. 42 00:02:48,000 --> 00:02:51,000 Og við förum í kafla 9, 43 00:02:51,000 --> 00:02:54,000 og ég ætla að nota gedit. 44 00:02:54,000 --> 00:02:59,000 Við skulum sjá, gedit, og ég ætla að hringja í minn dynamic.php. 45 00:02:59,000 --> 00:03:03,000 Boom. 46 00:03:03,000 --> 00:03:06,000 Innan dynamic.php, þar sem þetta er PHP skrá 47 00:03:06,000 --> 00:03:09,000 og ég vil að keyra þetta í gegnum PHP túlkur 48 00:03:09,000 --> 00:03:12,000 Ég þarf að byrja allt burt með þeim opnum merkjum, 49 00:03:12,000 --> 00:03:17,000 þannig að ég ætla að byrja slíkar strax, 50 00:03:17,000 --> 00:03:23,000 gefa mér smá pláss á milli tags, 51 00:03:23,000 --> 00:03:26,000 og þá benda á þessa æfingu var að leika í kring með 52 00:03:26,000 --> 00:03:34,000 þessi aðgerð kallað gettype svo gettype, þetta virka hérna. 53 00:03:34,000 --> 00:03:38,000 >> Takið eftir að það er ekki undirstrik eða rúm eða bandstrik eða eitthvað svoleiðis 54 00:03:38,000 --> 00:03:42,000 aðgreina á 2 orðum, fá og tegund, bara eitt orð að öllu leyti. 55 00:03:42,000 --> 00:03:46,000 En hvað þetta mun gera er ef ég fara í breytu til gettype, 56 00:03:46,000 --> 00:03:51,000 segja $ var eða $ x, 57 00:03:51,000 --> 00:03:55,000 þetta mun segja mér svona í kembiforrit formi 58 00:03:55,000 --> 00:03:59,000 hvaða nafn þessi tegund er. 59 00:03:59,000 --> 00:04:03,000 Við ætlum að prófa hér. 60 00:04:03,000 --> 00:04:07,000 Sérstaklega ef þú horfir aftur á pset sérstakur 61 00:04:07,000 --> 00:04:11,000 Við höfum fengið nokkrar mismunandi línur af kóða hér. 62 00:04:11,000 --> 00:04:16,000 Í fyrstu línu af kóða sem við frumstilla þennan breytu, $ var, 63 00:04:16,000 --> 00:04:21,000 að vera jafn 7, og þá höfum við þetta printf línu 64 00:04:21,000 --> 00:04:25,000 sem segir hey, printf var er auður. 65 00:04:25,000 --> 00:04:29,000 Printf er ein af mörgum leiðum sem við getum prentað það í PHP. 66 00:04:29,000 --> 00:04:33,000 Oft munt þú sjá echo fall notað í stað printf, 67 00:04:33,000 --> 00:04:40,000 en printf við erum öll þekki hafa verið að forritun í C um tíma. 68 00:04:40,000 --> 00:04:42,000 Það sem þú getur í raun gert er að við skulum sjá hvort afrita og líma virkar. 69 00:04:42,000 --> 00:04:46,000 Ég ætla að gefa þetta reyna. 70 00:04:46,000 --> 00:04:52,000 Við munum fara aftur yfir á tækið. 71 00:04:52,000 --> 00:05:00,000 Jæja, og svona. 72 00:05:00,000 --> 00:05:05,000 Og bil er lítið angurvær, en hér erum við að fara. 73 00:05:05,000 --> 00:05:08,000 Við höfum fengið þennan kóða hér. 74 00:05:08,000 --> 00:05:11,000 >> [Nemandi] Er það ekki góður stíll að flipi það? 75 00:05:11,000 --> 00:05:13,000 Því miður? 76 00:05:13,000 --> 00:05:15,000 [Nemandi] Er það hefðbundið að flipa það? 77 00:05:15,000 --> 00:05:21,000 Einmitt, svo spyr Sam ef það venju að flipa það eða ekki. 78 00:05:21,000 --> 00:05:23,000 Venjulega já. 79 00:05:23,000 --> 00:05:26,000 Í þessu tilfelli sem ég hef valið að. 80 00:05:26,000 --> 00:05:33,000 Heiðarlega, munt þú sjá mismunandi hluti milli mismunandi forritari. 81 00:05:33,000 --> 00:05:40,000 PHP er oftast notuð oft samhliða HTML 82 00:05:40,000 --> 00:05:45,000 og öðrum tungumálum, og svo stundum prentun mun líta smá funky 83 00:05:45,000 --> 00:05:50,000 Ef þú undirlið í PHP byrja og enda tags. 84 00:05:50,000 --> 00:05:53,000 Það fer í raun. 85 00:05:53,000 --> 00:05:56,000 Í þessu tilviki er að afrita og líma ekki líma flipana í fyrir mig, 86 00:05:56,000 --> 00:06:02,000 en það ákveðið er, eins og þú segir, gera það skýrara. 87 00:06:02,000 --> 00:06:06,000 Allt í lagi, ef þú vistar kóðann í dynamic.php 88 00:06:06,000 --> 00:06:10,000 þá hvað þú getur gert er að koma niður á flugstöðinni glugga þar sem ég er rétt hérna 89 00:06:10,000 --> 00:06:17,000 í gedit, og að gera sem nemur safna 90 00:06:17,000 --> 00:06:20,000 með að gera og svo að keyra kóða í C 91 00:06:20,000 --> 00:06:25,000 allt sem þú þarft að gera með PHP skrá er að byrja upp PHP túlkur, 92 00:06:25,000 --> 00:06:30,000 sem er lítið forrit sem heitir PHP, 93 00:06:30,000 --> 00:06:35,000 og þau rök sem þú gefur því túlkur er skrá sem þú vilt túlka. 94 00:06:35,000 --> 00:06:40,000 Í þessu tilfelli, dynamic.php. 95 00:06:40,000 --> 00:06:43,000 Úpps, þar gerði ég að setja það? 96 00:06:43,000 --> 00:06:52,000 Ó, ég setti það í kafla 9, og hér er ég. Það er ástæðan. 97 00:06:52,000 --> 00:06:57,000 >> Nú ef ég keyrt það aftur 98 00:06:57,000 --> 00:07:02,000 sjáum við að í fyrsta gettype virka kalli mínu 99 00:07:02,000 --> 00:07:04,000 var er heiltala. 100 00:07:04,000 --> 00:07:12,000 Í næstu Var er band, og síðan í þriðja einn Var er Boole. 101 00:07:12,000 --> 00:07:15,000 Hvað er áhugavert um þetta er ef við flettir aftur upp sjáum við að 102 00:07:15,000 --> 00:07:18,000 Þetta eru tegundir svipað þær sem við höfðum í C. 103 00:07:18,000 --> 00:07:22,000 Við höfðum ints í C. 104 00:07:22,000 --> 00:07:26,000 Við höfðum konar strengi í C, 105 00:07:26,000 --> 00:07:31,000 svo strengir voru ekki algjörlega legit tegund í þeim skilningi að 106 00:07:31,000 --> 00:07:37,000 CS50 band okkar var í raun það? 107 00:07:37,000 --> 00:07:39,000 Því miður? Missy? 108 00:07:39,000 --> 00:07:41,000 [Missy] Char *. 109 00:07:41,000 --> 00:07:43,000 Já, það var þetta char * við notuðum. 110 00:07:43,000 --> 00:07:47,000 Í upphafi misseris við vorum að nota band tegund, 111 00:07:47,000 --> 00:07:52,000 en það var í raun char * undir hetta. 112 00:07:52,000 --> 00:07:58,000 Við réttlátur tegund skilgreint það, en í PHP þessir strengir eru í raun gerð. 113 00:07:58,000 --> 00:08:07,000 Það er ekkert meira af þessum char * tegund efni. 114 00:08:07,000 --> 00:08:10,000 >> Þú munt sjá að við getum gert marga fleiri hluti með strengi 115 00:08:10,000 --> 00:08:14,000 miklu auðveldara í PHP en við gátum í C, 116 00:08:14,000 --> 00:08:17,000 og þá að lokum, höfum við þetta Boolean tegund, og mikill munur hér er að 117 00:08:17,000 --> 00:08:21,000 ef við skruna niður sjáum við að nafn af þessum tegundum 118 00:08:21,000 --> 00:08:28,000 eru nú heiltala, band, og Boolean stað int og bool, 119 00:08:28,000 --> 00:08:31,000 og eins og þú ná sér í mismunandi forritunarmál, 120 00:08:31,000 --> 00:08:36,000 miðað við að á einhverjum tímapunkti í lífi þínu sem þú verður að koma í snertingu við 121 00:08:36,000 --> 00:08:40,000 mismunandi þær sem þú munt taka eftir litlu einkennileg tilviljun eins og þetta 122 00:08:40,000 --> 00:08:44,000 þar sem C kallar heiltölur ints. 123 00:08:44,000 --> 00:08:46,000 Sumir kalla það heiltölur. 124 00:08:46,000 --> 00:08:51,000 Það eru önnur hugtök sem þú munt hlaupa inn. 125 00:08:51,000 --> 00:08:55,000 Big int við sáum í dag í SQL. 126 00:08:55,000 --> 00:08:59,000 Einnig eru númer og síðan bool, Boolean, 127 00:08:59,000 --> 00:09:03,000 alls konar mismunandi þar. 128 00:09:03,000 --> 00:09:07,000 >> Þetta er ekki hræðilega áhugavert en nú ætla ég að gefa þér smá tíma- 129 00:09:07,000 --> 00:09:13,000 Ef við rennum aftur út til að vinna í gegnum þessa æfingu neðst á síðu 3 130 00:09:13,000 --> 00:09:20,000 þar sem hún spyr hvað tegundir samsvara þessum gildum hér neðst. 131 00:09:20,000 --> 00:09:24,000 Við höfum 3,50. 132 00:09:24,000 --> 00:09:28,000 Við höfum þetta í hérna, sem er áhugavert. 133 00:09:28,000 --> 00:09:32,000 Við höfum ekki séð það áður, þó ef þú hefur verið að fylgjast með í fyrirlestri 134 00:09:32,000 --> 00:09:35,000 þú sennilega þegar vita hvað það er. 135 00:09:35,000 --> 00:09:40,000 Þá höfum við þetta, þar sem þetta er svona angurvær. 136 00:09:40,000 --> 00:09:42,000 Þú viðurkenna þetta. 137 00:09:42,000 --> 00:09:46,000 Hvað er þetta í C? 138 00:09:46,000 --> 00:09:50,000 Sam? Hvað myndi þetta gefa þér í C? 139 00:09:50,000 --> 00:09:54,000 Það myndi opna skrá sem heitir dynamic.php og gera það læsileg. 140 00:09:54,000 --> 00:09:58,000 Já, og hvað væri tegund af breytu sem við myndum tengja þetta? >> File stjörnu. 141 00:09:58,000 --> 00:10:02,000 Einmitt, við viljum tengja það að skrá stjörnu. 142 00:10:02,000 --> 00:10:08,000 Þetta er lögmætur PHP líka. 143 00:10:08,000 --> 00:10:12,000 Setja það. Sjá hvað gerist þegar þú fara að í gettype. 144 00:10:12,000 --> 00:10:19,000 Og þá einnig að athuga hvað null er, hvað það gæti verið í PHP. 145 00:10:19,000 --> 00:10:21,000 Ég skal gefa þér nokkrar mínútur. 146 00:10:21,000 --> 00:10:24,000 Þú getur bókstaflega afrita og líma þessi gildi í, 147 00:10:24,000 --> 00:10:29,000 og þá munum við gera smá handahófi kalla á þig 148 00:10:29,000 --> 00:10:34,000 og sjá hvað þú færð. 149 00:10:34,000 --> 00:10:36,000 >> [Nemandi] Ég er með spurningu. << Já. 150 00:10:36,000 --> 00:10:40,000 Í einum af fyrirlestrum Davíð sagði að það er eitthvað sem þú getur sett efst á skránni þinni 151 00:10:40,000 --> 00:10:43,000 þannig að þú þarft ekki að slá í PHP í hvert skipti. 152 00:10:43,000 --> 00:10:45,000 Hvað var að? 153 00:10:45,000 --> 00:10:50,000 Hann var líklega að tala um pund Bang, kjötkássa Bang. 154 00:10:50,000 --> 00:10:57,000 Það er tilskipun um að ef þú merkir skrá sem executable 155 00:10:57,000 --> 00:11:01,000 þá er það sem það gerir þegar þú framkvæma skrá 156 00:11:01,000 --> 00:11:06,000 það mun segja skel program 157 00:11:06,000 --> 00:11:12,000 að nota PHP túlkur til að túlka innihald af the skrá. 158 00:11:12,000 --> 00:11:16,000 Spurningin sé hvað var þetta sérstaka línu 159 00:11:16,000 --> 00:11:20,000 að við gætu efst PHP skrá okkar að þurfa ekki að fela 160 00:11:20,000 --> 00:11:26,000 þetta PHP línu eða í PHP stjórn þegar við viljum til að framkvæma skrá? 161 00:11:26,000 --> 00:11:31,000 Og þú getur raunverulega gera þetta með fullt af mismunandi skrár. 162 00:11:31,000 --> 00:11:37,000 Ég held að það fer eftir því hvar PHP tvöfaldur er geymt, 163 00:11:37,000 --> 00:11:43,000 en oft er usr / bin / PHP góður staður til að byrja. 164 00:11:43,000 --> 00:11:45,000 Þú getur fundið þetta út nákvæmlega með því að fara aftur niður í tækinu þínu 165 00:11:45,000 --> 00:11:50,000 og slá út hvaða PHP. 166 00:11:50,000 --> 00:11:55,000 The sem stjórn tölur út þegar þú ert að framkvæma tvöfaldur 167 00:11:55,000 --> 00:12:01,000 eða stjórn þar sem viðkomandi skrá er. 168 00:12:01,000 --> 00:12:06,000 Þetta segir mér að PHP er mjög aliasing í tvöfaldur skrá 169 00:12:06,000 --> 00:12:13,000 sem er geymt í usr / bin, sem er þar sem að mikið af kerfi tvöfaldur eru uppsett. 170 00:12:13,000 --> 00:12:21,000 Til dæmis, ef ég fletta upp á toppinn, nú að ég hef sett þetta #! lína hér 171 00:12:21,000 --> 00:12:27,000 Ég skruna niður, og ég get að reyna að keyra 172 00:12:27,000 --> 00:12:35,000 dynamic.php, en ég fæ þetta villa um leyfi sé hafnað, 173 00:12:35,000 --> 00:12:42,000 og hvað það þýðir að þessi skrá er ekki eins og að gefa executable leyfi. 174 00:12:42,000 --> 00:12:46,000 Það er ekki merkt sem skrá sem einhver getur keyrt. 175 00:12:46,000 --> 00:12:52,000 >> Þegar þú hleypur að gera eða Clang og þú got executable frá því 176 00:12:52,000 --> 00:12:56,000 að þýðandinn var sviði nógur til vita að hey, ég er að byggja upp executable. 177 00:12:56,000 --> 00:13:00,000 Þú vilt sennilega að framkvæma það, svo það myndi sjálfkrafa stilla 178 00:13:00,000 --> 00:13:02,000 heimildir fyrir þig. 179 00:13:02,000 --> 00:13:06,000 Þetta er ekki raunin, þó, þegar þú býrð til venjulegt skrá frá grunni, 180 00:13:06,000 --> 00:13:13,000 Ástæðan sem þú yfirleitt vil ekki hafa allir skrá á vélinni þinni sé executable, 181 00:13:13,000 --> 00:13:15,000 þannig að þú ert í raun að fara í og ​​með höndunum gera það. 182 00:13:15,000 --> 00:13:22,000 Auðveldasta leiðin til að gera það er með chmod skipuninni, 183 00:13:22,000 --> 00:13:28,000 og chmod + x segir bæta executable hluti 184 00:13:28,000 --> 00:13:31,000 vegna þess að það er lesið smátt, skrifa hluti og executable hluti, 185 00:13:31,000 --> 00:13:35,000 R, W og X, 186 00:13:35,000 --> 00:13:39,000 og segja chmod + x mun kveikja á the executable hluti 187 00:13:39,000 --> 00:13:46,000 fyrir þá að skrá það við að skilgreina, sem í þessu tilfelli verður dynamic.php. 188 00:13:46,000 --> 00:13:49,000 >> [Nemandi] Er að kveikt fyrir alla? 189 00:13:49,000 --> 00:13:52,000 Við skulum athuga þetta út, þannig að hvernig myndi ég athuga að sjá heimildir? 190 00:13:52,000 --> 00:13:54,000 Viltu vita hvernig ég myndi athuga að sjá heimildir um skrá? 191 00:13:54,000 --> 00:13:56,000 [Inaudible nemandi svar] 192 00:13:56,000 --> 00:13:58,000 Því miður? >> [Student] XSD. 193 00:13:58,000 --> 00:14:03,000 XSD gefur okkur skrá í járnsög. 194 00:14:03,000 --> 00:14:09,000 Listing allar skrár,-L, mun sýna mér allar skrár í möppu mína 195 00:14:09,000 --> 00:14:13,000 konar í langan, fjölorður skráningu þeirra, og svo hér sjáum við að 196 00:14:13,000 --> 00:14:17,000 þetta dynamic.php skrá 197 00:14:17,000 --> 00:14:23,000 var síðast breytt 5 nóv á 16:21. 198 00:14:23,000 --> 00:14:26,000 Eigandi þessa skrá er jharvard. 199 00:14:26,000 --> 00:14:28,000 Það er notandi sem er innskráður 200 00:14:28,000 --> 00:14:31,000 Það er notandinn sem ég er að vinna eins og, 201 00:14:31,000 --> 00:14:36,000 og ef þú ert líka í tæki sem þú ert líka að vinna eins og jharvard notandi. 202 00:14:36,000 --> 00:14:38,000 Þú ert í nemenda hópnum, 203 00:14:38,000 --> 00:14:44,000 og þetta eru hlutir sem þú munt sjá nógu oft. 204 00:14:44,000 --> 00:14:47,000 >> Við getum farið í fullt af smáatriðum hér, 205 00:14:47,000 --> 00:14:50,000 en að mestu leyti það sem þú vilt að horfa á þegar þú ert að leita til að sjá 206 00:14:50,000 --> 00:14:55,000 hvort skrá er executable er fyrst og fremst 207 00:14:55,000 --> 00:14:58,000 notandinn sem á skrána, eigandi, 208 00:14:58,000 --> 00:15:03,000 þannig að þetta jharvard, og þá höfum við 209 00:15:03,000 --> 00:15:07,000 heimildir bita hérna til vinstri, 210 00:15:07,000 --> 00:15:13,000 og hvernig á að lesa þetta er að síðustu hluti 211 00:15:13,000 --> 00:15:18,000 oftast er notað til að merkja hvort-að minnsta kosti í þessu tilfelli 212 00:15:18,000 --> 00:15:21,000 þetta síðasta hluti verður oft vera stillt á auglýsingu til að sýna 213 00:15:21,000 --> 00:15:24,000 að skrá er skrá og ekki bara venjuleg skrá. 214 00:15:24,000 --> 00:15:28,000 Þá eftirfarandi 3 bita hérna 215 00:15:28,000 --> 00:15:34,000 ákvarða heimildir sem eigandi af the skrá hefur 216 00:15:34,000 --> 00:15:38,000 Svo í þessu tilfelli jharvard, sem eigandi af the skrá, að lesa og skrifa þessa skrá, 217 00:15:38,000 --> 00:15:42,000 en það er þjóta að segja að jharvard getur ekki keyrt þessa skrá. 218 00:15:42,000 --> 00:15:46,000 Næstu 3 bitar eru í hópnum, þannig að þetta er nemendur hópur, 219 00:15:46,000 --> 00:15:49,000 þannig að ef það voru margir notendur á tækinu mínu, 220 00:15:49,000 --> 00:15:52,000 og við höfðum marga notendur sem hluta af nemendum hópsins, 221 00:15:52,000 --> 00:15:55,000 þá geta allir lesið þessa skrá, en þeir geta ekki skrifað það, 222 00:15:55,000 --> 00:15:59,000 og sömuleiðis einhver annar, heimurinn 223 00:15:59,000 --> 00:16:01,000 getur aðeins lesið þessa skrá eins og heilbrigður. 224 00:16:01,000 --> 00:16:03,000 Það er gott, langt writeup um þetta, 225 00:16:03,000 --> 00:16:05,000 svo þú getur lesið á netinu. 226 00:16:05,000 --> 00:16:10,000 Í setja vandamál sérstakur við förum inn í þetta nánar. 227 00:16:10,000 --> 00:16:12,000 >> [Nemandi] er 218 vísa til í heiminum? 228 00:16:12,000 --> 00:16:17,000 The 218 er-burt the toppur af minn höfuð ég gleymi, 229 00:16:17,000 --> 00:16:20,000 en nei. 230 00:16:20,000 --> 00:16:29,000 Við skulum sjá. Ég blanking á það núna. 231 00:16:29,000 --> 00:16:32,000 Baka það sem við vorum að fara að gera við þetta chmod + x 232 00:16:32,000 --> 00:16:37,000 þar sem við vildum að gefa dynamic.php leyfi executable, 233 00:16:37,000 --> 00:16:40,000 og spurningin var hvort þetta myndi gefa executable leyfi öllum 234 00:16:40,000 --> 00:16:44,000 eða bara jharvard, og við getum séð það með því að 235 00:16:44,000 --> 00:16:48,000 keyra skipanir og slá ls-l, 236 00:16:48,000 --> 00:16:51,000 og nú erum við að sjá að það er merkt sem executable. 237 00:16:51,000 --> 00:16:54,000 Þú sérð að það var litabreyting. 238 00:16:54,000 --> 00:16:57,000 Nú dynamic.php er skráð í grænt, 239 00:16:57,000 --> 00:17:01,000 og það lítur út eins og svar við spurningu er það, Charlotte? 240 00:17:01,000 --> 00:17:04,000 [Charlotte] Aðeins jharvard. >> Aðeins jharvard, já. 241 00:17:04,000 --> 00:17:08,000 >> Ef við vildum að snúa executable hluti á fyrir alla 242 00:17:08,000 --> 00:17:10,000 hvernig gætum við gert það? 243 00:17:10,000 --> 00:17:13,000 Allar hugsanir? >> A + x? 244 00:17:13,000 --> 00:17:15,000 Já, nákvæmlega. 245 00:17:15,000 --> 00:17:23,000 Charlotte segir að við getum gert chmod a + x á dynamic.php, 246 00:17:23,000 --> 00:17:26,000 og nú ef við keyra LS-l við sjáum að executable bits 247 00:17:26,000 --> 00:17:30,000 eru örugglega kveikt á fyrir alla. 248 00:17:30,000 --> 00:17:37,000 Og þú getur raunverulega gera gagnstæða um þetta, svo að þú geta snúa það burt fyrir alla 249 00:17:37,000 --> 00:17:41,000 með mínus. 250 00:17:41,000 --> 00:17:46,000 Nú það er slökkt á, og nú getum við snúið aftur á fyrir jharvard 251 00:17:46,000 --> 00:17:52,000 þannig að við getum í raun að keyra það núna, 252 00:17:52,000 --> 00:17:58,000 og nú þú sérð þegar við að keyra kóða í # sérstakt! lína efst, 253 00:17:58,000 --> 00:18:04,000 #! lína, sagði skel, 254 00:18:04,000 --> 00:18:08,000 sagði flugstöðinni okkar hey, þegar skrá er keyrt, 255 00:18:08,000 --> 00:18:14,000 nota / usr / bin / PHP til að túlka þessa skrá 256 00:18:14,000 --> 00:18:20,000 og þá prenta framleiðsla. 257 00:18:20,000 --> 00:18:22,000 [Inaudible nemandi spurning] 258 00:18:22,000 --> 00:18:25,000 Jú, láta mig fletta aftur upp. Alveg eins og þetta. 259 00:18:25,000 --> 00:18:36,000 Þú munt sjá allar þessar tilskipanir að byrja með þessa pund og svo upphrópunarmerki, 260 00:18:36,000 --> 00:18:39,000 stundum kallað klabbið, kjötkássa Bang. 261 00:18:39,000 --> 00:18:48,000 >> [Nemandi] Hvernig getum við keyrt það með PHP dynamic.php áður en við gera það executable? 262 00:18:48,000 --> 00:18:55,000 Spurningin var hvernig getum við keyrt þetta með PHP tvöfaldur 263 00:18:55,000 --> 00:18:58,000 en dynamic.php er ekki executable? 264 00:18:58,000 --> 00:19:01,000 Þetta er frábær mikilvægt vegna þess að þetta er einmitt hvernig 265 00:19:01,000 --> 00:19:06,000 það er að fara að vinna þegar þú skrifar vandamál setja 7. 266 00:19:06,000 --> 00:19:09,000 Flest af þeim tíma PHP skrár eru ekki beint executable. 267 00:19:09,000 --> 00:19:14,000 Leiðin sem virkar er vegna þess að það er PHP tvöfaldur sem er executable. 268 00:19:14,000 --> 00:19:16,000 Túlkurinn er hlutur sem er verið að framkvæma, 269 00:19:16,000 --> 00:19:20,000 og svo hvað það er að gera er bókstaflega slurping á öllu efni 270 00:19:20,000 --> 00:19:25,000 á dynamic.php skrá okkar og fara á milli lína 271 00:19:25,000 --> 00:19:29,000 og keyra þær skipanir, svo það er með því að nota PHP skrá okkar 272 00:19:29,000 --> 00:19:31,000 sem lista af leiðbeiningum. 273 00:19:31,000 --> 00:19:36,000 Það er ekki beint framkvæmd þess. 274 00:19:36,000 --> 00:19:40,000 Það er þar sem við segjum að þessar skrár eru túlkuð á hlaupa tíma. 275 00:19:40,000 --> 00:19:46,000 Það er hlaupa tími tungumál í staðinn eitthvað sem er ákvarðað á saman tíma, 276 00:19:46,000 --> 00:19:49,000 ekki saman tungumál eins og C. 277 00:19:49,000 --> 00:19:54,000 >> Er there a vegur til að fá tíma hlaupa tungumál til að starfa eins og ef það er saman tíma tungumál, 278 00:19:54,000 --> 00:19:58,000 eins og ef þú ert allt gangi gert á þjóninum 279 00:19:58,000 --> 00:20:00,000 frekar en-þú veist hvað ég meina? 280 00:20:00,000 --> 00:20:04,000 Já, svo er spurningin 281 00:20:04,000 --> 00:20:11,000 er there a vegur til fá að keyra tíma tungumál til starfa meira eins og setja saman tegundir Tími tungumálum? 282 00:20:11,000 --> 00:20:18,000 Og það eru, ég meina, það er virkur svæði rannsókna fyrir a einhver fjöldi af þessum fyrirtækjum. 283 00:20:18,000 --> 00:20:22,000 Ég tel Facebook hefur gert mikið af vinnu með PHP 284 00:20:22,000 --> 00:20:25,000 og samantekt það niður, sem gerir það hraðar, fínstilla það 285 00:20:25,000 --> 00:20:29,000 síðan á síðuna þeirra er byggt á PHP. 286 00:20:29,000 --> 00:20:34,000 Ef þú hefur verið eftirfarandi node.js yfirleitt, 287 00:20:34,000 --> 00:20:40,000 sem er eins konar JavaScript túlks 288 00:20:40,000 --> 00:20:44,000 að vera fær um að keyra JavaScript utan vafranum, utan vafranum þínum, 289 00:20:44,000 --> 00:20:47,000 því jafnan JavaScript myndi bara hlaupa innan Firefox eða Króm, 290 00:20:47,000 --> 00:20:52,000 og það væri hægt að nota til að gera flott fjör gerast á vefsíðu 291 00:20:52,000 --> 00:20:55,000 og gera vefsíðu þína dynamic. 292 00:20:55,000 --> 00:20:59,000 Það hefur verið byggt á fullt af vinnu sem Google hefur gert 293 00:20:59,000 --> 00:21:03,000 að gera JavaScript og C + + 294 00:21:03,000 --> 00:21:09,000 binda saman, þannig að það er mikið af virkum rannsóknum til 295 00:21:09,000 --> 00:21:13,000 fá þessi tungumál til að eiga samskipti við og hagræða þeim, 296 00:21:13,000 --> 00:21:17,000 fyrst og fremst vegna þess að svo margir geta kóða í PHP og JavaScript 297 00:21:17,000 --> 00:21:19,000 vegna þess að það er mun auðveldara. 298 00:21:19,000 --> 00:21:21,000 Það er a einhver fjöldi ágætur. Þú ert ekki með ábendingum. 299 00:21:21,000 --> 00:21:27,000 Þú ert ekki með tegundir fljótandi í kring. 300 00:21:27,000 --> 00:21:31,000 Þau vildu að fá ávinning af þessum þýða tungumálum tíma 301 00:21:31,000 --> 00:21:36,000 með öllum tegund eftirlits og hraða og lægri minni notkun og allt að 302 00:21:36,000 --> 00:21:42,000 meðan enn viðhalda sveigjanleika og vellíðan af nota af þessum nýrri sjálfur. 303 00:21:42,000 --> 00:21:46,000 >> Til baka upprunalegu áætlun okkar af árás. 304 00:21:46,000 --> 00:21:50,000 Við höfum fengið nokkrar af þessum spurningum hér í vandamál setja sérstakur okkar. 305 00:21:50,000 --> 00:21:54,000 Við skulum fara í gegnum þá raun fljótt, og við munum fara um herbergi. 306 00:21:54,000 --> 00:21:59,000 Charlotte, hvaða tegund er 3.50? 307 00:21:59,000 --> 00:22:01,000 [Charlotte] Það er tvöfalt. >> Það er tvöfalt. 308 00:22:01,000 --> 00:22:03,000 Jimmy, hvað er þetta næsti? >> Fylki. 309 00:22:03,000 --> 00:22:09,000 An array, ógnvekjandi, og Jared, hvað er fopen? 310 00:22:09,000 --> 00:22:11,000 [Jared] Það er auðlind. >> Það er auðlind. 311 00:22:11,000 --> 00:22:15,000 Það er góður af a nýr einn, ekki skrá stjörnu, ekki skrá. 312 00:22:15,000 --> 00:22:19,000 Það er auðlind er gerð í PHP, 313 00:22:19,000 --> 00:22:24,000 og ég er hryggur, Ella, síðasta null er það? 314 00:22:24,000 --> 00:22:26,000 Null. 315 00:22:26,000 --> 00:22:28,000 Null, hvernig er það spelt í PHP? >> Sama hátt. 316 00:22:28,000 --> 00:22:30,000 Sama hátt, höfuðborgum? >> Já. 317 00:22:30,000 --> 00:22:33,000 Já, allt í lagi. 318 00:22:33,000 --> 00:22:35,000 Hér förum við, að við höfum fengið tvöfalt, höfum við fengið fjölda, 319 00:22:35,000 --> 00:22:41,000 við höfum fengið auðlind, og þá höfum við fengið null. 320 00:22:41,000 --> 00:22:48,000 Við skulum sjá nú þú séð- 321 00:22:48,000 --> 00:22:51,000 við skulum sjá, svo núna er ég giska á það sem ég vil líka að gera er að draga upp 322 00:22:51,000 --> 00:22:56,000 Þessi vefsíða hérna, þetta php.net / handbók, 323 00:22:56,000 --> 00:23:01,000 Svo ef þú krakkar afrita það og opna vafra. 324 00:23:01,000 --> 00:23:07,000 Ég ætla að draga upp Chrome, setja það inn 325 00:23:07,000 --> 00:23:10,000 Mig langar að sýna þér þetta ekki bara af því að 326 00:23:10,000 --> 00:23:13,000 við getum talað allan daginn um gerðir og allt það gaman efni 327 00:23:13,000 --> 00:23:19,000 heldur vegna þess að þetta er PHP handbók, 328 00:23:19,000 --> 00:23:23,000 og það eru fullt af PHP forritari þarna úti. 329 00:23:23,000 --> 00:23:26,000 There ert a einhver fjöldi af PHP vefsíður þarna úti, 330 00:23:26,000 --> 00:23:31,000 og þar af leiðandi, það er mikið af gögnum á PHP, 331 00:23:31,000 --> 00:23:36,000 og handbók, þetta php.net, er mjög góður staður til að fara 332 00:23:36,000 --> 00:23:43,000 þegar þú ert með spurningar um hvað er besta leiðin til að gera X í PHP 333 00:23:43,000 --> 00:23:45,000 eða hvað er fall út? 334 00:23:45,000 --> 00:23:49,000 Bara svona að fá kunnuglegur með það sem þetta lítur út eins vegna 335 00:23:49,000 --> 00:23:54,000 þú munt vera að koma hingað oft dálítið fyrir vandamál setja 7. 336 00:23:54,000 --> 00:23:57,000 >> Ef þú endar að gera lokaverkefni sem notar PHP 337 00:23:57,000 --> 00:24:04,000 þetta verður að vera staður sem þú munt verða mjög vel kynnt. 338 00:24:04,000 --> 00:24:09,000 Oft er leiðin fólk að gera þetta sem þeir nota Google til að leita á síðuna, 339 00:24:09,000 --> 00:24:16,000 og þeir nota the leita kassi sem er hérna efst í hægra, sem er eins konar lítill. 340 00:24:16,000 --> 00:24:19,000 Ef þú ert Googling kring fyrir eitthvað að gera með PHP og þú sérð 341 00:24:19,000 --> 00:24:24,000 eitt af handbók tengla skjóta upp þú getur venjulega treyst á að 342 00:24:24,000 --> 00:24:31,000 sem nokkuð gott úrræði. 343 00:24:31,000 --> 00:24:34,000 Awesome, svo út af þessum tegundum, bara út af forvitni, 344 00:24:34,000 --> 00:24:37,000 hvaða verkefnum höfum við ekki séð? 345 00:24:37,000 --> 00:24:40,000 Nokkuð sem við höfum ekki séð hér? 346 00:24:40,000 --> 00:24:44,000 [Nemandi] Resource. >> Við sáum auðlind með fopen símtali. 347 00:24:44,000 --> 00:24:48,000 [Nemandi] Hlutir. >> Hlutir sem við höfum ekki séð fyrir víst. 348 00:24:48,000 --> 00:24:51,000 Callbacks við höfum ekki séð. 349 00:24:51,000 --> 00:24:54,000 There ert sumir af þessum gervi-fugla. 350 00:24:54,000 --> 00:24:57,000 Við ákveðið bara sá heiltala og tvöfaldur. 351 00:24:57,000 --> 00:25:01,000 Við vildum ekki sjá sumir af öðrum, þannig að ef við smellur á heiltölur 352 00:25:01,000 --> 00:25:08,000 sjáum eru einhverjar aðrar heiltölur sem þeir hafa hér? 353 00:25:08,000 --> 00:25:11,000 Eru þeir-svo heiltala, heiltala, heil tala. 354 00:25:11,000 --> 00:25:14,000 Sum tungumál hafa stærri heiltölu tegundir, 355 00:25:14,000 --> 00:25:23,000 eins og við sáum á MySQL dag var int og svo stór int. 356 00:25:23,000 --> 00:25:25,000 Cool. 357 00:25:25,000 --> 00:25:28,000 >> Svo, PHP handbók. 358 00:25:28,000 --> 00:25:37,000 Við skulum fara aftur til vandamál setja sérstakur okkar, og við munum nú að fletta niður til síðu 4. 359 00:25:37,000 --> 00:25:41,000 Eitt af því sem gerist þegar þú færð þessi tungumál 360 00:25:41,000 --> 00:25:49,000 sem hafa ekki þennan fasta slá svo þessum tungumálum sem þú ert að lýsa 361 00:25:49,000 --> 00:25:52,000 gerð á upp breytu framan 362 00:25:52,000 --> 00:26:00,000 er að fá tilvik þar sem þú getur byrjað með breytur af mismunandi gerðum 363 00:26:00,000 --> 00:26:04,000 samskipti við hvert annað, 364 00:26:04,000 --> 00:26:09,000 og PHP er þetta hlutur þar sem það reynir að gera 365 00:26:09,000 --> 00:26:13,000 sem hann telur vera skynsamlegast að gera 366 00:26:13,000 --> 00:26:18,000 þegar þú hefur 2 mismunandi gerðir samskipti við hvert annað. 367 00:26:18,000 --> 00:26:24,000 Til dæmis, ef við lítum á þessar línur af kóða hérna 368 00:26:24,000 --> 00:26:29,000 þú sérð að við höfum fengið það sem gerist þegar 369 00:26:29,000 --> 00:26:38,000 við að reyna að bæta strenginn 1 til tölunnar 2. 370 00:26:38,000 --> 00:26:41,000 Hvað gerist ef við reynum og bæta við streng sem er ekki tölugildi 371 00:26:41,000 --> 00:26:48,000 heldur raunverulegt stafir, CS til fjölda 50? 372 00:26:48,000 --> 00:26:51,000 Þá munum við sjá er eitthvað annað sem gerist þar 373 00:26:51,000 --> 00:26:56,000 í stað þess að bæta við streng að tala við erum að bæta við númer streng, 374 00:26:56,000 --> 00:27:00,000 og svo framvegis og svo framvegis til að þeim stað þar sem við erum að fá 375 00:27:00,000 --> 00:27:05,000 einhvers konar undarlegt efni hér þar sem við höfum fengið 7 + satt. 376 00:27:05,000 --> 00:27:09,000 Hvað Heck er það? 377 00:27:09,000 --> 00:27:19,000 >> Ef þú krakkar fara á undan og líma nokkur af þessum kóða í tækið þitt. 378 00:27:19,000 --> 00:27:27,000 Þú getur haldið það í dynamic.php. 379 00:27:27,000 --> 00:27:30,000 Við munum sjá hvað gerist. 380 00:27:41,000 --> 00:27:43,000 [Nemandi] Bara nota prenta ekki printf? 381 00:27:43,000 --> 00:27:52,000 Já, þannig að þú munt komast að því að prenta er líka gild virka fyrir prentun í PHP. 382 00:27:52,000 --> 00:27:54,000 Það eru til margar mismunandi leiðir til að gera það. 383 00:27:54,000 --> 00:27:58,000 Við munum sjá með a par af dæmi seinna þegar við byrjum að tala 384 00:27:58,000 --> 00:28:02,000 um einstaka vandamál sem við erum að fara að skrifa 385 00:28:02,000 --> 00:28:06,000 og þá er styrkur vandamál sem við erum að fara að skrifa 386 00:28:06,000 --> 00:28:09,000 að jafnvel þó að við höfum fopen og fclose 387 00:28:09,000 --> 00:28:15,000 það er oft ekki einfaldasta leiðin til að lesa í innihald skrá. 388 00:28:15,000 --> 00:28:21,000 PHP hefur a einhver fjöldi af þessum C-eins holdovers. 389 00:28:21,000 --> 00:28:28,000 [Nemandi] Þegar ég setti í öllum 6 af þeim hlutum sem ég fæ bara eitt númer sem framleiðsla. 390 00:28:28,000 --> 00:28:36,000 [Nate H.] Þegar þú setur í öllum 6 af þessum hlutum. 391 00:28:36,000 --> 00:28:39,000 Við skulum sjá er það vegna þess að það er hugsanlega- 392 00:28:39,000 --> 00:28:46,000 eitt er að þessi prenta símtöl eru ekki hætt í lok með nýjum línum. 393 00:28:46,000 --> 00:28:49,000 Það er engin ný lína aðgreina hvert þessara prenta símtöl, 394 00:28:49,000 --> 00:28:51,000 svo kannski þú ert að fá einn fjölda, 395 00:28:51,000 --> 00:28:58,000 og það er í raun bara amalgam af nýjum stöfum línu. 396 00:28:58,000 --> 00:29:00,000 [Nemandi] Jæja, hvernig geri ég skugga- 397 00:29:00,000 --> 00:29:03,000 Jæja, það eru fullt af mismunandi vegu. 398 00:29:03,000 --> 00:29:06,000 Þú getur handvirkt setja í prentun á nýju línu staf, 399 00:29:06,000 --> 00:29:09,000 bergmál af nýja línu staf, 400 00:29:09,000 --> 00:29:12,000 prenta á nýja línu. 401 00:29:12,000 --> 00:29:16,000 [Nemandi] Svo echo er það sama og printf? 402 00:29:16,000 --> 00:29:21,000 >> Printf er eins C printf 403 00:29:21,000 --> 00:29:24,000 þar sem þú ert að prenta í sniðinn band. 404 00:29:24,000 --> 00:29:32,000 Þú ert að gefa það snið band og síðan öll tákn breytum. 405 00:29:32,000 --> 00:29:39,000 Það er oft eitthvað sem er ekki notað- 406 00:29:39,000 --> 00:29:42,000 við skulum sjá, sem höfnun, 407 00:29:42,000 --> 00:29:48,000 Ég er minna kunnugur PHP en ég er með öðrum tungumálum vefnum, 408 00:29:48,000 --> 00:29:53,000 og þegar ég hef forritað í PHP Ég yfirleitt ekki nota printf 409 00:29:53,000 --> 00:29:59,000 því mér finnst það hraðar til að nota innskot band getu sem það hefur 410 00:29:59,000 --> 00:30:04,000 sem við förum inn og ég skal sýna þér bara annað, 411 00:30:04,000 --> 00:30:08,000 en í C við höfum konar að gera þetta hacky hlutur að fá það til að prenta út almennilega. 412 00:30:08,000 --> 00:30:16,000 Þú getur í raun sett breytur beint inn í strengi í PHP. 413 00:30:16,000 --> 00:30:22,000 Printf er góður af of lengi fyrir það sem ég geri venjulega. Já, Ella. 414 00:30:22,000 --> 00:30:25,000 [Ella] Almennt ef þú færð Þáttunarvilla þýðir það- 415 00:30:25,000 --> 00:30:30,000 eins og á C þetta er ekki sagt þér nákvæmlega hvar mistök er og hvað það er, 416 00:30:30,000 --> 00:30:34,000 svo þýðir það líta í gegnum allan kóðann og reikna það út? 417 00:30:34,000 --> 00:30:39,000 Það er yfirleitt markvissari en það. 418 00:30:39,000 --> 00:30:48,000 Ég held að í því tilfelli var lítill burt, 419 00:30:48,000 --> 00:30:51,000 þannig að ég held að í því tilfelli sem við vantaði semíkommu. 420 00:30:51,000 --> 00:30:54,000 Hún var að reyna að gera skilningarvit af öllu, 421 00:30:54,000 --> 00:30:57,000 svo eins og þessir túlka tungumál, túlkurinn er að fara að reyna 422 00:30:57,000 --> 00:31:01,000 og gera sitt besta til að gera allt vinna á viðeigandi hátt. 423 00:31:01,000 --> 00:31:04,000 >> Þú munt sjá, td í JavaScript 424 00:31:04,000 --> 00:31:10,000 Þú munt oft línu yfirlýsingar enda með semíkommu eins og þeir gera í PHP, 425 00:31:10,000 --> 00:31:13,000 rétt eins og þeir gera í C. 426 00:31:13,000 --> 00:31:15,000 Í JavaScript sumum JavaScript túlka 427 00:31:15,000 --> 00:31:20,000 í fullt af vöfrum mun setja í semikommum fyrir þig 428 00:31:20,000 --> 00:31:23,000 Ef þú skyldir vera að vantar þá. 429 00:31:23,000 --> 00:31:29,000 Þær reyna og mæta einhverjum sloppiness þinni hálfu. 430 00:31:29,000 --> 00:31:34,000 Það er þar sem það gæti verið að reyna og reyna og reyna að gera hlutina vinna, 431 00:31:34,000 --> 00:31:36,000 og þá að lokum það verður að fá til a benda hvar það segir allt í lagi, 432 00:31:36,000 --> 00:31:38,000 Ég get ekki gert það vinna bailing, og það er þar sem þú munt fá línu númer 433 00:31:38,000 --> 00:31:44,000 þessi kann að virðast svolítið burt úr nákvæmlega stað. 434 00:31:44,000 --> 00:31:47,000 Jæja, þannig að við skulum fara í gegnum þetta mjög fljótt. 435 00:31:47,000 --> 00:31:50,000 Við vinstri burt með Ella, þannig að við skulum fara yfir til Missy, 436 00:31:50,000 --> 00:31:54,000 og Missy, hvað þýðir prentun band 1 auk fjölda 2 gefa þér? 437 00:31:54,000 --> 00:31:56,000 [Missy] 3. >> 3. 438 00:31:56,000 --> 00:31:59,000 Er það skynsamleg? Konar? 439 00:31:59,000 --> 00:32:02,000 Er það að gefa þér númerið? Er það að gefa þér band? 440 00:32:02,000 --> 00:32:05,000 [Missy] A tala. >> Það er tala. 441 00:32:05,000 --> 00:32:09,000 En það er prentun það, svo það er að fara að gefa þér einhvers konar band. 442 00:32:09,000 --> 00:32:12,000 >> Eitt sem við getum gert til að stöðva this út 443 00:32:12,000 --> 00:32:21,000 er ef við gerum $ var = 1 + 2 444 00:32:21,000 --> 00:32:28,000 og þá segjum við bergmál af gettype, 445 00:32:28,000 --> 00:32:33,000 þannig að við erum að nota þriðja konar prentun hérna. 446 00:32:33,000 --> 00:32:39,000 Nú getum við séð hvað gerist hér. 447 00:32:39,000 --> 00:32:42,000 Hér er það sem við höfum fengið við fengum heiltölu úr þessu. 448 00:32:42,000 --> 00:32:45,000 Jafnvel þó að við vorum að bæta þetta band til að tala, 449 00:32:45,000 --> 00:32:48,000 við fengum ekki að fá band út af því, eins og Missy sagði. 450 00:32:48,000 --> 00:32:52,000 Við vorum að fá heiltölu. 451 00:32:52,000 --> 00:32:57,000 Jæja, þannig að við skulum sjá, næst, 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. Er það skynsamleg? 454 00:33:02,000 --> 00:33:04,000 [Kevin] Já. 455 00:33:04,000 --> 00:33:06,000 [Nate H.] Hvers vegna? Hvers vegna er það skynsamleg til þín? 456 00:33:06,000 --> 00:33:11,000 [Kevin] Vegna þess að það er bara að hafa band, hafa númer gildi núll. 457 00:33:11,000 --> 00:33:16,000 Já, frábært. 458 00:33:16,000 --> 00:33:20,000 Konar óljós aðstæður, en það er gott að vita hvað gerist. 459 00:33:20,000 --> 00:33:25,000 Stella, hvað gerist næst með númer 1 + band 2? 460 00:33:25,000 --> 00:33:27,000 [Stella] 3. >> 3 aftur. 461 00:33:27,000 --> 00:33:30,000 Og í þessu tilfelli, fáum við a band eða númer? 462 00:33:30,000 --> 00:33:36,000 >> Við skulum gefa þetta reyna. 463 00:33:36,000 --> 00:33:43,000 Hver hraðar en ég fá svar? Charlotte? 464 00:33:43,000 --> 00:33:46,000 Ó, ég didn't-lagi, við skulum sjá, við erum að fara að gera slíkt hið sama tegund af hlutur 465 00:33:46,000 --> 00:33:49,000 þar sem við höfum fengið fjölda auk band, og við erum að fara að enduróma tegund, 466 00:33:49,000 --> 00:33:51,000 sjá hvað við fáum. 467 00:33:51,000 --> 00:33:55,000 Við fáum einnig heiltala. 468 00:33:55,000 --> 00:33:58,000 Það skiptir ekki máli hvort er band sem maður er að tala. 469 00:33:58,000 --> 00:34:00,000 Við erum enn að fara að fá heiltölu. 470 00:34:00,000 --> 00:34:04,000 Það er samt að fara að gera það sem við gætum átt von á. 471 00:34:04,000 --> 00:34:09,000 Allt í lagi, svo Sam, hvað um 90 + 9 flöskur af bjór á vegg? 472 00:34:09,000 --> 00:34:12,000 [Sam] 99. >> 99. 473 00:34:12,000 --> 00:34:15,000 Engar flöskur af bjór á vegg, þó. 474 00:34:15,000 --> 00:34:17,000 Það gefur okkur aðeins meiri upplýsingar um hvað er að gerast. 475 00:34:17,000 --> 00:34:21,000 [Sam] Ef þú hefðir skrifað 9 í bréfum 476 00:34:21,000 --> 00:34:23,000 þá hefði 90, ekki satt? 477 00:34:23,000 --> 00:34:26,000 [Nate H.] Já. 478 00:34:26,000 --> 00:34:30,000 Spurningin var hvort við myndum skrifað 9 út sem N-I-N-E 479 00:34:30,000 --> 00:34:34,000 hefðum við fengið 99 eða 90? 480 00:34:34,000 --> 00:34:38,000 Við myndum fá 90. 481 00:34:38,000 --> 00:34:42,000 Það er bókstaflega bara að leita að stafa stafi. 482 00:34:42,000 --> 00:34:46,000 Það er ekki nógu klár til að þekkja fjölda orða og þessi efni. Já. 483 00:34:46,000 --> 00:34:48,000 >> [Nemandi] Er það svo hlutur sem typecasting í PHP? 484 00:34:48,000 --> 00:34:54,000 Það er, og það er nákvæmlega eins og þú myndir gera það í C. 485 00:34:54,000 --> 00:34:56,000 Hvað um 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.] Já, svo það gæti komið á óvart um þetta? 488 00:35:01,000 --> 00:35:04,000 Hvað myndi gerast ef þú gerðir þetta sama tegund af hlutur í C, 489 00:35:04,000 --> 00:35:06,000 ef þú gerðir 10/7 í C? 490 00:35:06,000 --> 00:35:08,000 [Charlotte] Það vildi bara gefa þér-eftir því hvernig þú typecasted ég giska 491 00:35:08,000 --> 00:35:12,000 það myndi gefa þér aðeins takmarkaðan fjölda af tölustöfum eftir aukastaf. 492 00:35:12,000 --> 00:35:16,000 Já, þannig að takmarkaður fjöldi talna eftir aukastaf. 493 00:35:16,000 --> 00:35:21,000 Hvað annað gæti verið-myndi það gefa þér einhverjar tölur eftir aukastaf? 494 00:35:21,000 --> 00:35:28,000 Oft ekki, svo aftur, allt eftir því hvernig þú ert að typecasting það 495 00:35:28,000 --> 00:35:31,000 það mega eða mega ekki breyta því í fljótandi lið númer. 496 00:35:31,000 --> 00:35:35,000 Hér var það svona gott að það gerði. 497 00:35:35,000 --> 00:35:40,000 Hefði við sýnt þér þetta aftur þegar við byrjuðum að gera þessa tegund af efni í C 498 00:35:40,000 --> 00:35:44,000 það myndi sennilega hafa gert smá meira vit 499 00:35:44,000 --> 00:35:48,000 að það er ekki bara að fara í 1. 500 00:35:48,000 --> 00:35:51,000 Og svo að lokum, Jamie, hvað um 7 + satt? 501 00:35:51,000 --> 00:35:53,000 [Jamie] 8. >> 8. 502 00:35:53,000 --> 00:35:56,000 Hvað þýðir það? 503 00:35:56,000 --> 00:35:58,000 Ég held að það gefur bara satt verðmæti 1. 504 00:35:58,000 --> 00:36:01,000 Já. Hvað gerist ef við að breyta því að falskur? 505 00:36:01,000 --> 00:36:04,000 [Nemandi] 7. 506 00:36:04,000 --> 00:36:09,000 Já, þannig að muna hvar við tölum um þessar tvöfaldur gildi, 507 00:36:09,000 --> 00:36:12,000 1 vera á, 0 vera burt? 508 00:36:12,000 --> 00:36:17,000 Nú höfum við satt er 1, 0 er rangt, 509 00:36:17,000 --> 00:36:21,000 og þú getur ekki séð þetta í C dæmum sem við höfum gert þetta síðasta önn, 510 00:36:21,000 --> 00:36:27,000 en sögulega bool tegund í C hefur ekki verið alvöru gerð, 511 00:36:27,000 --> 00:36:32,000 þannig að fólk hefur notað 0 og 1 í staðinn satt og ósatt. 512 00:36:32,000 --> 00:36:35,000 Þetta er birtingarmynd þess. 513 00:36:35,000 --> 00:36:39,000 >> Allt í lagi, þannig að einn mikilvægur hluti um allt þetta 514 00:36:39,000 --> 00:36:41,000 er að við höfum þessar mismunandi tegundir. 515 00:36:41,000 --> 00:36:43,000 Þeir geta samskipti við hvert annað. 516 00:36:43,000 --> 00:36:49,000 Þeir geta oft samskipti við hvort annað á þann hátt sem er gott, eins og við höfum séð hér. 517 00:36:49,000 --> 00:36:53,000 Það er gott að vera fær um að hafa band 1 og númer 2, bæta við þá saman og fá 3. 518 00:36:53,000 --> 00:36:55,000 Það er skynsamlegt. 519 00:36:55,000 --> 00:36:59,000 Hins vegar þegar þú ert að skrifa vefsíður, og sérstaklega þegar þú ert að vinna 520 00:36:59,000 --> 00:37:04,000 notandi inntak, segjum svo að þú hafir skrifað vefform 521 00:37:04,000 --> 00:37:09,000 sem safnar upplýsingum frá notanda og þá fer að vinna hana 522 00:37:09,000 --> 00:37:13,000 á bak endir, á miðlara megin í PHP kóðanum þínum 523 00:37:13,000 --> 00:37:18,000 Ef þú ert að búast við að gildi sem notandinn slegið í og ​​lögð 524 00:37:18,000 --> 00:37:23,000 til að mynda að vera heiltala eða að vera fljótandi lið númer eða eitthvað svoleiðis 525 00:37:23,000 --> 00:37:29,000 þú þarft að sérstaklega köstuðu 526 00:37:29,000 --> 00:37:34,000 og þá gera einhvers konar eftirlit. 527 00:37:34,000 --> 00:37:41,000 >> Þú vilt ekki bara að treysta á þetta Juggling tegund kerfi til að gera hlutina upp, 528 00:37:41,000 --> 00:37:48,000 sérstaklega af öryggisástæðum og bara fyrir robustness af vefsvæði þínu. 529 00:37:48,000 --> 00:37:51,000 Bara eitthvað til að hafa í huga að þegar þú ert að meðhöndla formi gagna, 530 00:37:51,000 --> 00:37:57,000 eitthvað sem kemur í pósti eða fá superglobals 531 00:37:57,000 --> 00:38:01,000 ganga úr skugga um að þú sannprófa alltaf það og umbreyta því og typecast það. 532 00:38:01,000 --> 00:38:04,000 Og rétt eins og við vorum að tala um stund síðan að typecasting 533 00:38:04,000 --> 00:38:08,000 í PHP er nákvæmlega það sama og í C þar sem þú hefur sviga 534 00:38:08,000 --> 00:38:14,000 og þá tegund. 535 00:38:14,000 --> 00:38:16,000 Hafðu það í huga. 536 00:38:16,000 --> 00:38:19,000 Ein aðgerð sem mun koma sér vel þegar þú ert að gera þetta 537 00:38:19,000 --> 00:38:22,000 er við höfum verið að nota og þetta er góður af eins og að hliðar- 538 00:38:22,000 --> 00:38:27,000 við höfum verið að nota þessa gettype virka hérna 539 00:38:27,000 --> 00:38:30,000 að reikna út hvaða breytu, 540 00:38:30,000 --> 00:38:37,000 og á meðan þetta er vel fyrir kembiforrit og til að sjá hvaða tegund breytu er 541 00:38:37,000 --> 00:38:42,000 þú vilt ekki að nota það, til dæmis, í ástandi þar sem 542 00:38:42,000 --> 00:38:57,000 þú ert að skoða til að sjá hvort gettype á $ VAR = heiltala gera eitthvað. 543 00:38:57,000 --> 00:39:01,000 Þetta er slæmt, slæmt, slæmt. 544 00:39:01,000 --> 00:39:09,000 Í stað þess að það eru þessar aðgerðir sem kallast er heiltala, er band, 545 00:39:09,000 --> 00:39:14,000 er fylki sem þú vilt nota í staðinn, þannig að í þessu tilfelli 546 00:39:14,000 --> 00:39:18,000 það sem ég myndi vilja gera í stað þess að þetta strákur hérna 547 00:39:18,000 --> 00:39:31,000 er að nota er heiltala var. 548 00:39:31,000 --> 00:39:37,000 Og þeir eru oft nefnd er is_ * í þeim skilningi að þú getur skipta um * við heiltölu, 549 00:39:37,000 --> 00:39:43,000 band, et cetera, og bara til að vera viss um mjög fljótur 550 00:39:43,000 --> 00:39:50,000 þetta er int PHP. 551 00:39:50,000 --> 00:39:59,000 Útlit eins og þú getur gert annað hvort er int eða er það er heiltala sem? 552 00:39:59,000 --> 00:40:06,000 Já, alias, svo int heiltala samheiti. 553 00:40:06,000 --> 00:40:08,000 Cool. 554 00:40:14,000 --> 00:40:17,000 >> Hvernig eigum við að gera? 555 00:40:17,000 --> 00:40:20,000 Við skulum taka upp hraða svolítið. 556 00:40:20,000 --> 00:40:24,000 Nú ætlum við að tala um fylki, þannig að þú getur séð 557 00:40:24,000 --> 00:40:28,000 Í næsta hluta af sérstakur við tölum um hvernig fylki í PHP 558 00:40:28,000 --> 00:40:31,000 eru örlítið öðruvísi en þeir eru í C. 559 00:40:31,000 --> 00:40:34,000 Í sannleika, þá eru þeir eins konar amalgam 560 00:40:34,000 --> 00:40:36,000 fylki sem þú hefur komið að þekkja og elska í C 561 00:40:36,000 --> 00:40:40,000 þar sem allt er af sömu gerð 562 00:40:40,000 --> 00:40:43,000 geymdar í röð og contiguously í minni, 563 00:40:43,000 --> 00:40:46,000 og þú hefur þessar tölur og vísitölur. 564 00:40:46,000 --> 00:40:49,000 Þú hefur vísitalan 0, 1 er vísitala neysluverðs, vísitölu 2, 565 00:40:49,000 --> 00:40:53,000 og þú geyma gildi á þessum vísitölum. 566 00:40:53,000 --> 00:40:57,000 Þú líka í C, þegar þú skrifar Speller, a einhver fjöldi af þú 567 00:40:57,000 --> 00:41:00,000 gerði kjötkássa borð nálgun, og þú sá að við höfðum 568 00:41:00,000 --> 00:41:03,000 annars konar geymslu þar sem við vorum að kortleggja 569 00:41:03,000 --> 00:41:07,000 lykillinn að því að í gildi, þannig að þegar þú reyndir að geyma eitthvað í kjötkássa töflunni 570 00:41:07,000 --> 00:41:11,000 þú þurftir að tilgreina að þú vildir geyma það með tilteknum takka 571 00:41:11,000 --> 00:41:17,000 og þessi lykill ákvarða staðsetningu á gildi og þar sem það væri geymt. 572 00:41:17,000 --> 00:41:22,000 Þú hefur konar fengið báðum þessum hugtökum að gerast á sama tíma í PHP array 573 00:41:22,000 --> 00:41:27,000 og þar af leiðandi köllum við oft þessi tengin fylki 574 00:41:27,000 --> 00:41:33,000 þar sem við erum að tengja lykil í gildi. 575 00:41:33,000 --> 00:41:39,000 Í næsta hluta við tölum um einföld PHP array 576 00:41:39,000 --> 00:41:45,000 þar sem við höfum takka A, B, og C, 577 00:41:45,000 --> 00:41:53,000 allir strengir, kortlagning á heiltölur 1, 2, og 3. 578 00:41:53,000 --> 00:41:57,000 Og þú getur haft lykla af mismunandi gerðum. 579 00:41:57,000 --> 00:42:00,000 >> Hægt er að hafa nokkur lykla sem eru strengir, sumir lyklar sem eru heiltölur. 580 00:42:00,000 --> 00:42:03,000 Hægt er að hafa gildi af ýmsum gerðum. 581 00:42:03,000 --> 00:42:06,000 Hægt er að hafa gildi sem er strengur, gildi sem er heiltala, 582 00:42:06,000 --> 00:42:11,000 gildi sem er hlut eða annað fylki, til dæmis, 583 00:42:11,000 --> 00:42:16,000 allt í sama array mótmæla, sem er skrýtin tilfinning. 584 00:42:16,000 --> 00:42:20,000 Þú þarft ekki að hafa array sem er bara ein tegund af frumefni á það. 585 00:42:20,000 --> 00:42:26,000 Þú getur haft margar mismunandi hlutir að gerast þar. 586 00:42:26,000 --> 00:42:33,000 The annar hlutur að hafa í huga er að þegar þú sérð eitthvað svona í kóðanum þínum, 587 00:42:33,000 --> 00:42:38,000 sem gildir PHP til að lýsa fjölda bara svona, 0, 1, 2, 3, 4, 5, 588 00:42:38,000 --> 00:42:43,000 sem mun lýsa að frumstilla $ Arr að þetta fylki. 589 00:42:43,000 --> 00:42:48,000 En hvað þú ert í raun að fá undir the hetta er þessi konar óbeina 590 00:42:48,000 --> 00:42:55,000 kynslóð lykla þar sem við höfum fengið 0 til 0, 1 til 1, 2 í 2, 3 3. 591 00:42:55,000 --> 00:42:59,000 Og það kemur í ljós að jafnvel ef þú hafa óákveðinn greinir í ensku fylking svona gaur upp hér 592 00:42:59,000 --> 00:43:03,000 þar sem þú ert með, B og C sem lykla 593 00:43:03,000 --> 00:43:09,000 og þá getur þú byrjað að nota Push array aðferð til að byrja að nota þessa array eins og mánudaginn, 594 00:43:09,000 --> 00:43:12,000 svo þú getur séð að þetta array mótmæla, þetta fylki er í raun að verða of mikið. 595 00:43:12,000 --> 00:43:15,000 Við getum notað það eins og fylki. Við getum notað það eins og a kjötkássa borð. 596 00:43:15,000 --> 00:43:19,000 Við getum notað það eins og a stafla. 597 00:43:19,000 --> 00:43:22,000 Þegar þú byrjar að þrýsta hluti á þessu fylki 598 00:43:22,000 --> 00:43:30,000 The fyrstur hlutur sem þú ýta á þetta verður vísitala 0 og þá vísitölu 1 og vísitölu 2. 599 00:43:30,000 --> 00:43:33,000 Hægt er að fá þessa tegund af óbeina kynslóð lykla 600 00:43:33,000 --> 00:43:38,000 nema þú tilgreinir þá sérstaklega. 601 00:43:38,000 --> 00:43:43,000 Leiðin sem þú tilgreinir takka sérstaklega, að sjálfsögðu, með því að nota þetta krappi tákn, 602 00:43:43,000 --> 00:43:48,000 sem er svipað og fylki nema í stað þess að aðeins að leyfa 603 00:43:48,000 --> 00:43:54,000 heiltala vísitölur hér, nú erum við að leyfa neitt. 604 00:43:54,000 --> 00:43:57,000 Ef þú vilt lykillinn að vera strengur, vilt þú að tilgreina það svona. 605 00:43:57,000 --> 00:44:06,000 Ef þú vilt það til að vera int, tilgreina þú það með int sem þú vilt nota. 606 00:44:06,000 --> 00:44:13,000 >> Spurningar um það svo langt? 607 00:44:13,000 --> 00:44:18,000 Einn af the ágætur hlutur óður í þessa hugmynd 608 00:44:18,000 --> 00:44:26,000 er að þú getur bara alltaf að hafa eitt gildi geymt með ákveðna takka. 609 00:44:26,000 --> 00:44:32,000 Ef við förum aftur yfir til okkar tæki-láta mig eyða af þessu efni. 610 00:44:32,000 --> 00:44:47,000 Og við skulum segja að ég frumstilla array að vera 0, 1, 2, gert. 611 00:44:47,000 --> 00:44:55,000 Ef ég veit nú að, ​​til dæmis, ef ég echo $ Arr [0] 612 00:44:55,000 --> 00:44:59,000 Ég ætla að fá gildið 0 prentað út, 613 00:44:59,000 --> 00:45:05,000 og þar er bara alltaf verið eitt gildi geyma ákveðna takka 614 00:45:05,000 --> 00:45:11,000 ef ég geyma eitthvað á $ Arr [0], segja, 615 00:45:11,000 --> 00:45:16,000 þá veit ég hvenær ég echo $ Arr [0] aftur 616 00:45:16,000 --> 00:45:19,000 Ég ætla ekki að fara að fá 0 prentað út eins og áður. 617 00:45:19,000 --> 00:45:24,000 Ég ætla bara að fara að fá. 618 00:45:24,000 --> 00:45:30,000 Þannig að þetta er í rauninni að segja að ég get ekki hafa $ Arr [0] geyma 2 mismunandi gildi. 619 00:45:30,000 --> 00:45:34,000 Það er ekki hægt að geyma bæði 0 og band í, svona bókstaflega stað 620 00:45:34,000 --> 00:45:38,000 hvað var á $ Arr [0] áður. 621 00:45:38,000 --> 00:45:43,000 The ástæða ÉG koma þessu upp er að keyra það, sjá hvað gerist. 622 00:45:43,000 --> 00:45:47,000 Sjá hér að ég fékk 0 prentuð út og síðan hérna. 623 00:45:47,000 --> 00:45:51,000 Það er engin ný lína þar vegna þess að ég var latur og ekki setja það inn 624 00:45:51,000 --> 00:45:54,000 Hvað er kaldur um þetta er að við getum notað þetta sem leið 625 00:45:54,000 --> 00:46:00,000 að ná þessari hugmynd um setja 626 00:46:00,000 --> 00:46:07,000 þar sem við getum ekki verið með marga lykla innan fylki. 627 00:46:07,000 --> 00:46:10,000 Við getum ekki sömu takka innan fylkisins. 628 00:46:10,000 --> 00:46:17,000 Ég get ekki inni 0 og gildið 1 og lykill 0 og gildi í 629 00:46:17,000 --> 00:46:21,000 eða lykill 0 og verðmæti satt. 630 00:46:21,000 --> 00:46:27,000 Takkarnir eru allt-það er bara 1 inni í array. 631 00:46:27,000 --> 00:46:32,000 Jafnvel þó þú getur haft sama gildi geymdar 632 00:46:32,000 --> 00:46:35,000 mörgum sinnum í fjölda undir mismunandi lykla 633 00:46:35,000 --> 00:46:42,000 það er ekki hægt að hafa sömu lyklana mörgum sinnum í PHP array þínu. 634 00:46:42,000 --> 00:46:47,000 >> Ef við lítum á þetta næsta vandamál, unique.php, 635 00:46:47,000 --> 00:46:51,000 þar sem við viljum að opna PHP skrá 636 00:46:51,000 --> 00:46:54,000 inniheldur lista af strengjum, eitt band á línu, 637 00:46:54,000 --> 00:47:01,000 og við viljum finna allar einstaka strengi í þeirri skrá 638 00:47:01,000 --> 00:47:06,000 allt sem við þurfum að gera er að nota eitt af þessum PHP fylki 639 00:47:06,000 --> 00:47:12,000 og nota strengina í skránni sem lykillinn að þessu fylki 640 00:47:12,000 --> 00:47:17,000 og halda að uppfæra fylki okkar sem við geyma þessar nýju lykla. 641 00:47:17,000 --> 00:47:22,000 Eins og við að lesa hverja línu út af skrá sem við getum geymt það í fylking, 642 00:47:22,000 --> 00:47:28,000 og í lok munum við hafa eins og lyklar okkar í fylking okkar 643 00:47:28,000 --> 00:47:34,000 öllum einstaka strengi innan skrá. 644 00:47:34,000 --> 00:47:37,000 Er það skynsamleg? 645 00:47:37,000 --> 00:47:41,000 Við skulum sjá hvernig þetta virkar. 646 00:47:41,000 --> 00:47:49,000 Við erum að fara að opna, í samræmi við sérstakur, ný skrá sem heitir unique.php. 647 00:47:49,000 --> 00:47:58,000 Opna. Úbbs, miður, nýja skrá. 648 00:47:58,000 --> 00:48:03,000 Við ætlum að byrja það burt með sama byrja og enda tags. 649 00:48:03,000 --> 00:48:17,000 Við erum að fara að vista það í kafla 9, og við erum að fara að kalla það unique.php. 650 00:48:17,000 --> 00:48:25,000 Jæja, nú auka nánd 651 00:48:25,000 --> 00:48:32,000 Hugmyndin hér er að opna skrá 652 00:48:32,000 --> 00:48:38,000 lesa í samræmi skrá um línu. 653 00:48:38,000 --> 00:48:46,000 Fyrir hverja línu í skrá 654 00:48:46,000 --> 00:48:51,000 við verðum fylki þar sem við höfum 655 00:48:51,000 --> 00:49:03,000  línan sem lykill okkar. 656 00:49:03,000 --> 00:49:09,000 Og svo þegar við komum að enda hér 657 00:49:09,000 --> 00:49:17,000 Lyklar $ Arr eru einstaka línur 658 00:49:17,000 --> 00:49:25,000 af skrá þar sem við vitum að ef ég setti línu inn í þetta fylki 659 00:49:25,000 --> 00:49:33,000 mörgum sinnum og það verður bara að halda vega þyngra gamla gildi, 660 00:49:33,000 --> 00:49:46,000 og við getum í raun sett array lína inn sem sér bara svona. 661 00:49:46,000 --> 00:49:48,000 >> Þetta er skrýtin tilfinning. 662 00:49:48,000 --> 00:49:52,000 Við erum að geyma sama lykilinn gildi par aftur og aftur og aftur, 663 00:49:52,000 --> 00:50:00,000 en þar sem við erum að tryggja að það verður aðeins 1 lykill kallast lína 664 00:50:00,000 --> 00:50:05,000 þannig að ef við erum með skrá sem segir-skrá af hávaði dýra og það hefur woof, woof, 665 00:50:05,000 --> 00:50:11,000 meow, meow, Moo, Moo, og í hvert skipti sem við lesum dýr hávaði út 666 00:50:11,000 --> 00:50:15,000 eins woof og geymum það í fylking okkar fáum woof, og þá í annað sinn 667 00:50:15,000 --> 00:50:20,000 geymum woof mun skrifa í fyrsta skipti sem við höfum geymt það. 668 00:50:20,000 --> 00:50:25,000 Í lok við munum bara hafa einn færslu í array 669 00:50:25,000 --> 00:50:33,000 fyrir hvert dýr hávaði í dýra hávaði skrá okkar. 670 00:50:33,000 --> 00:50:41,000 Ert þú krakkar finnst þess fullviss að þú getur takast á við opnun a skrá í PHP? 671 00:50:41,000 --> 00:50:45,000 Ein leið til að gera það-við skulum fara yfir þetta fljótt-ein leið til að gera það 672 00:50:45,000 --> 00:50:50,000 er með fopen, eins og við sáum áðan. 673 00:50:50,000 --> 00:50:55,000 Þú getur fopen some_file.txt. 674 00:50:55,000 --> 00:50:59,000 Þú getur opnað hana í lesa háttur, bara eins og í C. 675 00:50:59,000 --> 00:51:02,000 Það er eitt fullkomlega góð leið til að gera það. 676 00:51:02,000 --> 00:51:05,000 Þú líka þá að lesa í skránni línu fyrir línu 677 00:51:05,000 --> 00:51:12,000 hafa sömu störf, margir af þeim, sem þú gerðir í C. 678 00:51:12,000 --> 00:51:14,000 Þú hefur fgets. 679 00:51:14,000 --> 00:51:17,000 Þú hefur feof, þó að við gerum ekki eins og að nota það 680 00:51:17,000 --> 00:51:22,000 því, muna, það var ekki mikill í C. 681 00:51:22,000 --> 00:51:25,000 Þú getur gert það á sama hátt, 682 00:51:25,000 --> 00:51:34,000 en hér er raunverulega kaldur hlutur. 683 00:51:34,000 --> 00:51:41,000 Því miður, ég vil ekki að gera $ skrá, en það er fall sem heitir skrá í PHP, 684 00:51:41,000 --> 00:51:47,000 og þetta virka rétt hér er kaldur því það les allt innihald 685 00:51:47,000 --> 00:51:52,000 skrárinnar sem þú tilgreinir, svo some_file.txt, 686 00:51:52,000 --> 00:51:56,000 les allt innihald þessa skrá í fylki 687 00:51:56,000 --> 00:52:03,000 og þá er hægt að iterate yfir það, sem er laglegur nifty. 688 00:52:03,000 --> 00:52:07,000 >> Ef við förum td að vefur flettitæki okkar 689 00:52:07,000 --> 00:52:14,000 og við lítum á Google PHP skrá 690 00:52:14,000 --> 00:52:23,000 Þú getur séð hér að handbók okkar segir að skrá les allan skrá í fylki, 691 00:52:23,000 --> 00:52:27,000 og við getum file_get_contents að skila efni á skrá sem band, 692 00:52:27,000 --> 00:52:30,000 en yfirleitt bara að fá það sem fylki er mjög gott vegna þess að það sem það gerir 693 00:52:30,000 --> 00:52:33,000 það brýtur það upp þannig að hver þáttur 694 00:52:33,000 --> 00:52:37,000 í fylkinu er ein lína í skrá, 695 00:52:37,000 --> 00:52:41,000 þannig að ef við lítum á skrá 0, það er fyrsta lína skrárinnar. 696 00:52:41,000 --> 00:52:46,000 File 1, annarri línu, skrá 2, þriðju línu, og svo framvegis og svo framvegis. 697 00:52:46,000 --> 00:52:50,000 Væri ekki gott ef það var allt sem þú þurfti að gera í C? 698 00:52:50,000 --> 00:52:53,000 Pretty nifty. 699 00:52:53,000 --> 00:52:59,000 Davíð sýndi það í fyrirlestri, og orðfæri sem hann sýndi var 700 00:52:59,000 --> 00:53:03,000 að til viðbótar við staðal okkar til lykkja-í PHP höfðum að 701 00:53:03,000 --> 00:53:09,000 fyrir ($ i = 0, i <10, i + +), 702 00:53:09,000 --> 00:53:16,000 og þú getur gert þetta í PHP líka, sama- 703 00:53:16,000 --> 00:53:27,000 við höfum líka þetta flott reisa heitir framhandleggur. 704 00:53:27,000 --> 00:53:32,000 Framhandleggur er mjög vel þegar iterating yfir fylki eða þessi gögn uppbygging 705 00:53:32,000 --> 00:53:36,000 vegna þess að það gerir þér kleift að draga úr hvor þáttur í fylki 706 00:53:36,000 --> 00:53:42,000 án þess að þurfa að höndunum gera flokkun sjálfur, 707 00:53:42,000 --> 00:53:46,000 án þess að þurfa að höndunum búa til vísitölu breytu, hækka það, 708 00:53:46,000 --> 00:53:51,000 draga úr gildi í fylki á þessum tímapunkti, því það er mjög algengt að gera. 709 00:53:51,000 --> 00:53:54,000 >> Þú sennilega hafa gert það tonn af tíma þegar þú varst að gera C efni 710 00:53:54,000 --> 00:54:00,000 á önn, svo við þessu framhandleggur 711 00:54:00,000 --> 00:54:06,000 við getum lykkja yfir þessu skrá fjölda, 712 00:54:06,000 --> 00:54:12,000 og setningafræði er sem við viljum nú lykkju á þessu fylki 713 00:54:12,000 --> 00:54:18,000 og tilgreina að breyta ætlum við að nota til að geyma 714 00:54:18,000 --> 00:54:27,000 þáttur í þessu fylki á staðnum, staðbundið gildissvið þessarar framhandleggur lykkja, 715 00:54:27,000 --> 00:54:32,000 er að við erum að fara að kalla það lína. 716 00:54:32,000 --> 00:54:38,000 Ef það er skrá af bara orð og það er eitt orð í línu 717 00:54:38,000 --> 00:54:43,000 við gætum kalla það orð eins og heilbrigður, í raun bara að gefa þessu nafn, 718 00:54:43,000 --> 00:54:49,000 hvað sem þú vilt kalla það, 719 00:54:49,000 --> 00:55:02,000 og þá inni í lykkju sem þú getur gert hvað sem þú vilt með þessari breytu línu. 720 00:55:02,000 --> 00:55:08,000 Ef það er ekki nóg til að fá verðmæti í fylkinu og þú vilt líka að fá 721 00:55:08,000 --> 00:55:17,000 vísitölu með það að þú getur tilgreint nafn vísitölu 722 00:55:17,000 --> 00:55:22,000 og gildi, og nú þú hafa aðgang að 2 breytum. 723 00:55:22,000 --> 00:55:26,000 Þú hefur $ i og lína 724 00:55:26,000 --> 00:55:30,000 þar sem $ I er vísitala á fjölda, 725 00:55:30,000 --> 00:55:38,000 og lína er lína sem þú sóttir af skrá. 726 00:55:38,000 --> 00:55:49,000 Til dæmis, ef við vildum að prenta út echo línu 0 á skránni sem þetta, 727 00:55:49,000 --> 00:55:57,000 við gætum gert það bara svona, "Line $ i á skrá er $ lína," 728 00:55:57,000 --> 00:56:02,000 og hér er eitthvað sem við höfum einnig ekki séð enn hvort 729 00:56:02,000 --> 00:56:13,000 þar sem ég hef bara alveg sleppt yfir% d fyrirtæki þetta allt% s 730 00:56:13,000 --> 00:56:16,000 sem við þurftum að takast á við í C, og í staðinn hef ég farið beint til 731 00:56:16,000 --> 00:56:19,000 skrifa breytur í samræmi á streng minn. 732 00:56:19,000 --> 00:56:23,000 >> Þetta er kallað breyta innskot, band brúun 733 00:56:23,000 --> 00:56:26,000 þar sem þú ert troða breytum rétt í, og PHP túlkur 734 00:56:26,000 --> 00:56:31,000 er sviði nógur þegar það er að lesa í gegnum streng sem hefst með gæsalöppum- 735 00:56:31,000 --> 00:56:34,000 ekki einn vitna, með einn skráð strengi sem þú getur ekki gert þetta- 736 00:56:34,000 --> 00:56:38,000 en með tvöföldum skráð strengi þegar hann les í gegnum það er að leita að breyta. 737 00:56:38,000 --> 00:56:42,000 Það er veiði þá niður, og ef það lítur breytur það mun taka gildi breytunnar 738 00:56:42,000 --> 00:56:47,000 og efni það í band ef það er hægt að umbreyta það inn í a band framsetning, 739 00:56:47,000 --> 00:56:51,000 sem er nokkuð sniðugt. 740 00:56:51,000 --> 00:56:56,000 Fyrir nú, við skulum athugasemd út afganginn af öllu, 741 00:56:56,000 --> 00:57:00,000 vista þetta, og hvað við getum gert núna er að við getum opna skrá 742 00:57:00,000 --> 00:57:06,000 að við getum hringt some_file.txt-skulum búa til nýja skrá- 743 00:57:06,000 --> 00:57:15,000 og við getum sett í fullt af bull efni hér bara að prófa allt út, 744 00:57:15,000 --> 00:57:25,000 vista það, kalla það some_file.txt, eins og ég er að gera upp hér efst, 745 00:57:25,000 --> 00:57:33,000 og nú ef ég súmma út bara til að ganga úr skugga um að allt sé í sömu möppu- 746 00:57:33,000 --> 00:57:36,000 það lítur út eins og ég hef unique.php og some_file.txt í sömu möppu. 747 00:57:36,000 --> 00:57:42,000 Ef ég keyra PHP unique.php 748 00:57:42,000 --> 00:57:51,000 sjá hvernig það prentar út hverja línu í skrána mína og hvað línan er? 749 00:57:51,000 --> 00:57:56,000 >> Það er nokkuð öflugur, ekki satt? 750 00:57:56,000 --> 00:58:03,000 Look, það tók 3 línur af kóða til að opna skrá. 751 00:58:03,000 --> 00:58:08,000 Jæja, 4 línur af kóða. Ég get ekki treyst í dag, greinilega. 752 00:58:08,000 --> 00:58:13,000 En í raun bara 2 áhugaverðar línur af kóða, því hin 2 voru hrokkið axlabönd, 753 00:58:13,000 --> 00:58:17,000 en í þessari miklu kóða við gátum til að opna skrá, iterate gegnum það, 754 00:58:17,000 --> 00:58:20,000 draga út línuna fjölda og línan sjálf 755 00:58:20,000 --> 00:58:24,000 og prenta það út. 756 00:58:24,000 --> 00:58:26,000 Flott efni. Charlotte. 757 00:58:26,000 --> 00:58:28,000 [Charlotte] Ég er með spurningu um setningafræði. 758 00:58:28,000 --> 00:58:33,000 Svo framhandleggur fjallað hvert einasta lína í skrá sem þú opnar, 759 00:58:33,000 --> 00:58:37,000 og svo þegar þú vilt gera hluti með hvert einasta lína þú bara það sem 760 00:58:37,000 --> 00:58:39,000 og þá tengja gildi. 761 00:58:39,000 --> 00:58:41,000 [Nate H.] Það sem þú getur gert hér-spurningin var 762 00:58:41,000 --> 00:58:46,000 sem framhandleggur hefur að gera með fjölda, þannig að framhandleggur setningafræði 763 00:58:46,000 --> 00:58:51,000 er virkilega framhandleggur, og eftir því að það er ekkert pláss 764 00:58:51,000 --> 00:58:53,000 eða eitthvað á milli fyrir og hvert. 765 00:58:53,000 --> 00:58:56,000 Þeir verða að fara við hliðina á hvort öðru, 766 00:58:56,000 --> 00:59:00,000 og þá tekur það í fylki, 767 00:59:00,000 --> 00:59:05,000 og þá hefur þetta önnur leitarorð sem heitir eins og þessi þarf að vera þarna, 768 00:59:05,000 --> 00:59:11,000 og síðan eftir eins og þú getur annaðhvort sett einn breytu nafn, 769 00:59:11,000 --> 00:59:14,000 í því tilviki sem þú ert að fara að draga fram gildi í fylkinu, 770 00:59:14,000 --> 00:59:20,000 ekki vísitölur eða ef þú gerir það sem við höfum skrifað undir 771 00:59:20,000 --> 00:59:24,000 þú færð lykla og gildum. 772 00:59:24,000 --> 00:59:33,000 Þú hefur framhandleggur þáttur í fylki eða par í fylkinu sem færðir til gildi 773 00:59:33,000 --> 00:59:38,000 eða bara gildi. 774 00:59:38,000 --> 00:59:40,000 Það fer eftir því hvað þú þarft, ef þú þarft ekki á takkana, 775 00:59:40,000 --> 00:59:42,000 þá getur þú farið með verðmæti. 776 00:59:42,000 --> 00:59:45,000 Ef þú vilt að takka þú getur farið með þá líka. 777 00:59:45,000 --> 00:59:48,000 >> [Charlotte] Ég áttaði líka við aldrei lýst i eða línu. 778 00:59:48,000 --> 00:59:51,000 Hvernig virkar það vita jafnvel hvað þeir eru? 779 00:59:51,000 --> 00:59:53,000 [Nate H.] Hvað áttu við lýsa? 780 00:59:53,000 --> 00:59:57,000 [Charlotte] Það er aldrei sagt þeim hvað ég eða lína þýðir. 781 00:59:57,000 --> 01:00:01,000 [Nate H.] Við sögðum aldrei í tölvunni hvað ég eða lína þýðir hvað- 782 01:00:01,000 --> 01:00:05,000 [Charlotte] að þeir verðtryggð eða they're- 783 01:00:05,000 --> 01:00:09,000 [Nate H.] Við sögðum aldrei að þetta er ætlað að vera vísitölu eða lykill og gildið, 784 01:00:09,000 --> 01:00:13,000 og það er vegna þess að það er PHP túlkur. 785 01:00:13,000 --> 01:00:17,000 Þetta virkar eins og yfirlýsing og segir allt í lagi, lykillinn er að fara að vera 786 01:00:17,000 --> 01:00:20,000 breytu sem heitir i geymt í breytu sem heitir i. 787 01:00:20,000 --> 01:00:24,000 Gildið er að fara að geyma í breytu sem heitir lína, 788 01:00:24,000 --> 01:00:28,000 þannig virkar þetta sem yfirlýsingu þessara stærða 789 01:00:28,000 --> 01:00:35,000 og segir: Ég er lykill, og $ lína er gildi. 790 01:00:35,000 --> 01:00:37,000 Já, Ella. 791 01:00:37,000 --> 01:00:41,000 [Ella] Ef takkarnir eru ekki gert tölulega 792 01:00:41,000 --> 01:00:44,000 hvernig er það að ákveða hvaða röð það er að fara að prenta allt? 793 01:00:44,000 --> 01:00:47,000 Er það bara eins og í röð og það var tekið á? 794 01:00:47,000 --> 01:00:51,000 [Nate H.] skulum gefa það a reyna. 795 01:00:51,000 --> 01:00:57,000 Við skulum búa til breytu sem heitir Arr, 796 01:00:57,000 --> 01:01:06,000 og við getum gert fer í 7. 797 01:01:06,000 --> 01:01:19,000 Segjum 0 fer í annað fylki með 1, 2, eða epli. 798 01:01:19,000 --> 01:01:30,000 Segjum 7 fer í 1, b fer í 2, 799 01:01:30,000 --> 01:01:39,000 og 3 fer í 4. 800 01:01:39,000 --> 01:01:44,000 Þetta er góður af brjálaður útlit dæmis vegna þess að við erum að blanda upp 801 01:01:44,000 --> 01:01:47,000 strengir og heiltölur allan stað. 802 01:01:47,000 --> 01:01:50,000 Það er enginn raunverulegur til að þessu fylki. 803 01:01:50,000 --> 01:01:55,000 Ég meina, við gætum pantað allt í stafrófsröð með lykla. 804 01:01:55,000 --> 01:01:57,000 Við gætum pantað allt í stafrófsröð eftir gildi. 805 01:01:57,000 --> 01:02:00,000 >> Við gætum reynt og tekið tillit til þess að sumir eru strengir, sumir ints, 806 01:02:00,000 --> 01:02:03,000 og við gætum reynt og breyta þeim öllum í sama tegund og sjá hvað gerist, 807 01:02:03,000 --> 01:02:09,000 eða við getum íhuga þær í gildi sem við inn nú þegar þá 808 01:02:09,000 --> 01:02:14,000 þar sem við setjum þennan gaur í fyrstu, þetta strákur í annað, þessi strákur í þriðja, 809 01:02:14,000 --> 01:02:19,000 þessi strákur í fjórða, et cetera. 810 01:02:19,000 --> 01:02:23,000 Við skulum sjá hvað gerist þegar við keyra þennan kóða. 811 01:02:23,000 --> 01:02:29,000 Ef við skruna niður og gera sams konar hlutur, 812 01:02:29,000 --> 01:02:31,000 og hér það er ekki prenta út nýjar línur. 813 01:02:31,000 --> 01:02:35,000 Þegar það lesa það út af the skrá það var þar á meðal nýjum línum í gildi, 814 01:02:35,000 --> 01:02:38,000 sem var vegna prenta út fallega, en hér er ekki, 815 01:02:38,000 --> 01:02:40,000 svo er það hvers vegna allt er smushed saman. 816 01:02:40,000 --> 01:02:44,000 Við skulum bæta við í því nýja línu bara til að gera hlutina nice. 817 01:02:44,000 --> 01:02:51,000 Skulum endursýning það, og svo hér 818 01:02:51,000 --> 01:02:54,000 líta á það sem gerðist. 819 01:02:54,000 --> 01:03:00,000 Það prenta allt út í þeirri röð sem við setja það inn í fylki. 820 01:03:00,000 --> 01:03:10,000 Það er varðveita röð í þeim skilningi. 821 01:03:10,000 --> 01:03:15,000 >> Fara aftur á þessu vandamáli af uniques 822 01:03:15,000 --> 01:03:20,000 þar sem við viljum vera fær um að iterate á skrá, 823 01:03:20,000 --> 01:03:24,000 og við munum gefa það some_file.txt, 824 01:03:24,000 --> 01:03:27,000 og við erum að fara að iterate yfir það svona. 825 01:03:27,000 --> 01:03:31,000 Við sögðum að við vildum nota fylki til að tryggja að við myndum fengið allt að 826 01:03:31,000 --> 01:03:36,000 einstaka línur út þaðan, og við gátum gert það mjög auðveldlega 827 01:03:36,000 --> 01:03:49,000 bara að geyma í fylki sem við að sjálfsögðu lýsa utan gildissviðs lykkju, 828 01:03:49,000 --> 01:03:55,000 og við sögðum að ef við notuðum línur í skrá sem lykla í fylking okkar 829 01:03:55,000 --> 01:03:59,000 Ef við komum inn afrit línu við myndum vera ríkari fyrri gildi. 830 01:03:59,000 --> 01:04:08,000 Það er ekki alltaf hægt að hafa 2 takka sem eru eins í sama fylki. 831 01:04:08,000 --> 01:04:13,000 Við geta gera réttlátur þessi. 832 01:04:13,000 --> 01:04:17,000 Við munum losna við þessa echo yfirlýsingu hérna. 833 01:04:17,000 --> 01:04:24,000 Hér erum við að geyma línuna í skrána í fylking okkar 834 01:04:24,000 --> 01:04:28,000 nota sig eins og the lykill. 835 01:04:28,000 --> 01:04:32,000 Ekkert að því, og það kemur í ljós að við gerum ekki einu sinni á þennan takka. 836 01:04:32,000 --> 01:04:38,000 Við þurfum ekki að ég breyta. 837 01:04:38,000 --> 01:04:43,000 Á þessum tímapunkti ef við vorum að gera annað framhandleggur lykkja 838 01:04:43,000 --> 01:04:48,000 og við vorum að lykkja yfir hverju samkomulagi 839 01:04:48,000 --> 01:04:56,000 og línu núna ef við echo-Úps, fyrirgefðu. 840 01:04:56,000 --> 01:05:00,000 Við getum ekki notað kommu. Við verðum að nota þetta sem leitarorð. 841 01:05:00,000 --> 01:05:05,000 Nú ef við echo línu við eigum öll einstaka orð í skránni. 842 01:05:05,000 --> 01:05:10,000 Ef við förum upp til some_file.txt, 843 01:05:10,000 --> 01:05:19,000 og við skulum segja að við gerum epli, banani, epli, epli, banani, 844 01:05:19,000 --> 01:05:22,000 ef við erum að prenta út öll einstaka orð í þessari skrá við ættum bara að fá 845 01:05:22,000 --> 01:05:30,000 epli og banani til að prenta út. 846 01:05:30,000 --> 01:05:36,000 Ef við vistað þetta, nú hér við munum stækka aftur, 847 01:05:36,000 --> 01:05:44,000 PHP unique.php og Ta-da. 848 01:05:44,000 --> 01:05:51,000 Við höfum tekist uniqued skrána. 849 01:05:51,000 --> 01:05:55,000 >> Endanleg hluti af þessu vandamáli er að biðja þig um að raða þessu fylki áður en þú prenta það út 850 01:05:55,000 --> 01:05:58,000 vegna þess að í þessari einföldu dæmi að við höfum bara gert 851 01:05:58,000 --> 01:06:04,000 Við vorum heppnir í þeim skilningi að skrá- 852 01:06:04,000 --> 01:06:06,000 Við gerðum þetta háttuð dæmi með eplum og banana. 853 01:06:06,000 --> 01:06:08,000 Það var þegar raðað. 854 01:06:08,000 --> 01:06:19,000 En með því að nota einfalda röðun virka þú getur raða fylki, sem er laglegur nifty. 855 01:06:19,000 --> 01:06:24,000 Endanleg sem ég vildi tala við ykkur um mjög fljótt 856 01:06:24,000 --> 01:06:31,000 er að þessi tegund af PHP er allt vel og gott, og það er frábær vel 857 01:06:31,000 --> 01:06:43,000 vita hvernig á að gera ef þú þarft alltaf að gera lítið, fljótur hluti kerfisbundið. 858 01:06:43,000 --> 01:06:48,000 Til dæmis, ef ég þarf að skrifa forrit sem, segja, 859 01:06:48,000 --> 01:06:53,000 setur alla í hluta ég ætla ekki að fara og skrifa það í C. 860 01:06:53,000 --> 01:06:55,000 Það er að fara að vera lengi. 861 01:06:55,000 --> 01:06:57,000 Það er að fara að vera góður á sársauka, sérstaklega ef það eru skrár sem taka þátt, 862 01:06:57,000 --> 01:07:00,000 Rétt eins og þú krakkar hafa séð. 863 01:07:00,000 --> 01:07:05,000 Það er svo gaman að við bara þetta mikið kóða hérna 864 01:07:05,000 --> 01:07:08,000 við gátum til að rífa í gegnum skrá, draga út alla einstaka gildi 865 01:07:08,000 --> 01:07:11,000 og prenta þær út aftur. 866 01:07:11,000 --> 01:07:16,000 >> Hins vegar, fyrir verkefni þín, fyrir verkefnum, 867 01:07:16,000 --> 01:07:20,000 Ef þú ert að byggja upp vefsíður með PHP vald er að 868 01:07:20,000 --> 01:07:25,000 við erum að keyra PHP skrá okkar í gegnum þetta túlkur, 869 01:07:25,000 --> 01:07:29,000 og túlkurinn er vinnsla allt innan PHP tags, 870 01:07:29,000 --> 01:07:34,000 þannig allt annað ósnortið og spúandi út niðurstöður. 871 01:07:34,000 --> 01:07:40,000 Við getum gert þetta til að byggja HTML kerfisbundið. 872 01:07:40,000 --> 01:07:46,000 Nú, ef við förum aftur til sérstakur, síðustu vandamál í sérstakur 873 01:07:46,000 --> 01:07:56,000 tala um þessa hugmynd um styrk 874 01:07:56,000 --> 01:08:01,000 og skapa a falla-dúnn matseðill, 875 01:08:01,000 --> 01:08:06,000 sem þú mega eða mega ekki vilja til að gera, allt eftir því hvað lokaverkefni er að gera, 876 01:08:06,000 --> 01:08:13,000 sem gerir notandanum kleift að velja af lista með öllum mögulegum styrk 877 01:08:13,000 --> 01:08:15,000 einn styrkur þeirra. 878 01:08:15,000 --> 01:08:21,000 Nú, þetta er góður af a sársauki til að slá þetta út 879 01:08:21,000 --> 01:08:25,000 og verða að gera allt þetta með höndunum, sérstaklega þegar þú ert að þurfa að ganga úr skugga um 880 01:08:25,000 --> 01:08:28,000 að þú hefur öll horn sviga á réttum stað og allar vitna í réttum stað, 881 01:08:28,000 --> 01:08:34,000 svo með PHP er hægt að gera þetta kerfisbundið, og þú getur gert þetta mjög fljótt. 882 01:08:34,000 --> 01:08:36,000 >> Við skulum sjá hvernig á að gera þetta. 883 01:08:36,000 --> 01:08:42,000 Við erum að fara að opna nýja skrá. 884 01:08:42,000 --> 01:08:46,000 Við ætlum að setja í PHP skipanir okkar. 885 01:08:46,000 --> 01:08:53,000 Við ætlum að kalla það concentrations.php, 886 01:08:53,000 --> 01:08:58,000 og nú þegar þú ert að gera þetta, svona er gott að hugsa um 887 01:08:58,000 --> 01:09:02,000 þegar þú ert að reyna að blanda og jafningi PHP og HTML 888 01:09:02,000 --> 01:09:08,000 er vangaveltur út, allt í lagi, það er sá hluti sem ég vil að kerfisbundið búa? 889 01:09:08,000 --> 01:09:11,000 Hvað er sá hluti sem ég get kerfisbundið búa? 890 01:09:11,000 --> 01:09:17,000 Það er satt að þú getur gert allt af HTML 891 01:09:17,000 --> 01:09:19,000 inni af PHP blokkir. 892 01:09:19,000 --> 01:09:24,000 Þú getur echo allt HTML sem strengi. 893 01:09:24,000 --> 01:09:30,000 Til dæmis, ef ég vil byrja að gera að velja tags inni á PHP 894 01:09:30,000 --> 01:09:46,000 Ég get sagt echo, segja velja nafn = styrkur, 895 01:09:46,000 --> 01:09:49,000 og svo fyrir neðan að ég gæti hafa annað echo tag 896 01:09:49,000 --> 01:09:57,000 eða annað echo kallast loka velja. 897 01:09:57,000 --> 01:10:00,000 Þetta er ein leið til að gera það vegna þess hvað þetta er bókstaflega að fara að gera 898 01:10:00,000 --> 01:10:09,000 er að prenta út þetta band þegar það er keyrt í gegnum PHP túlkur, 899 01:10:09,000 --> 01:10:12,000 þannig að útkoman verði HTML. 900 01:10:12,000 --> 01:10:18,000 Ef ég vista þessa skrá eins og það er núna 901 01:10:18,000 --> 01:10:24,000 og ég að keyra PHP concentrations.php 902 01:10:24,000 --> 01:10:26,000 líta á það sem ég fékk. 903 01:10:26,000 --> 01:10:30,000 Ég fékk þetta opna loka velja merki. 904 01:10:30,000 --> 01:10:36,000 >> Ef ég væri að gera þetta og ég var að vista þessa niðurstöðu í skrá, 905 01:10:36,000 --> 01:10:45,000 segja, concentrations.html-bíddu, það lítur út eins og L hefur farið yfir á aðra hlið- 906 01:10:45,000 --> 01:11:02,000 nú ef ég opna hér concentrations.html þú sérð að ég hef gilt HTML skrá. 907 01:11:02,000 --> 01:11:05,000 Er svona undarlegt? 908 01:11:05,000 --> 01:11:09,000 Við erum að nota PHP til að búa til HTML, búa til gilt HTML. 909 01:11:09,000 --> 01:11:13,000 Leiðin sem við erum að gera það er að við erum bara að hafa PHP prenta 910 01:11:13,000 --> 01:11:16,000 HTML sem við viljum það til að prenta. 911 01:11:16,000 --> 01:11:20,000 Þetta er bókstaflega hvernig PHP vefsíður eru að vinna. 912 01:11:20,000 --> 01:11:24,000 Þegar þú heimsækir vefsíðu sem sendir þér eitthvað eins og 913 01:11:24,000 --> 01:11:30,000 eitthvað, eitthvað, eitthvað punktur com rista index.php 914 01:11:30,000 --> 01:11:33,000 tölva er bókstaflega að kalla upp index.php, 915 01:11:33,000 --> 01:11:38,000 að keyra það í gegnum PHP túlkur, og hvað skran kemur út 916 01:11:38,000 --> 01:11:49,000 það er að senda til baka í vafranum og segja hey, vafrinn, túlka þetta sem HTML. 917 01:11:49,000 --> 01:11:54,000 The ágætur hlutur er þessi það geta vera a sársauki til að stöðugt að skrifa echo, echo, echo, echo 918 01:11:54,000 --> 01:11:59,000 og látið allt innan gæsalappa eins og þetta, þannig að ef þú vilt að skrifa 919 01:11:59,000 --> 01:12:04,000 HTML sem er að fara að vera truflanir sjálfur þú getur gert það svona, 920 01:12:04,000 --> 01:12:16,000 setja það úti, loka það, 921 01:12:16,000 --> 01:12:21,000 og þá hér þú setur bara inn í PHP skipanir það sem þú þekkir 922 01:12:21,000 --> 01:12:26,000 þú vilt að kerfisbundið búa, og í þessu tilviki það er þá valkostur Tags 923 01:12:26,000 --> 01:12:31,000 sem eru sársauki til að búa til. 924 01:12:31,000 --> 01:12:37,000 >> Til dæmis gætum við búið þúsund tags valkostur 925 01:12:37,000 --> 01:12:48,000 með því að gera eitthvað eins og this, $ i <1000, i + + 926 01:12:48,000 --> 01:13:00,000 og segja echo valkostur gildi = $-Úpps, ég get ekki gert það. 927 01:13:00,000 --> 01:13:03,000 Jæja, við skulum gefa það a reyna og sjá hvað gerist. 928 01:13:03,000 --> 01:13:22,000 $ I og svo að segja $ i 01:13:27,000 Frekar en að þurfa að slá út þessi valkostur tag þúsund mismunandi tímum 930 01:13:27,000 --> 01:13:33,000 Ég er að nota PHP kóða til að búa til það sjálfkrafa, kerfisbundið. 931 01:13:33,000 --> 01:13:38,000 Eiginlega nifty. Já. 932 01:13:38,000 --> 01:13:41,000 Ég man þetta væri ekki getið í annaðhvort fyrirlestri eða walkthrough, 933 01:13:41,000 --> 01:13:43,000 en hvað er munurinn á milli gæsalappa, 934 01:13:43,000 --> 01:13:45,000 venjulegum sjálfur og þessar einn hluti? 935 01:13:45,000 --> 01:13:49,000 Það er reyndar eitthvað sem ég hef gert rangt hér sem ég ætlaði að sýna ykkur. 936 01:13:49,000 --> 01:13:52,000 The einn vitna leyfum engar sértákn 937 01:13:52,000 --> 01:13:57,000 svo allt inni í einu vitnað band er túlkuð bókstaflega. 938 01:13:57,000 --> 01:14:02,000 Ef ég hefði \ n innanverðan einn quotes og ég spara það, til dæmis, 939 01:14:02,000 --> 01:14:07,000 og nú er ég að fara niður og keyra það- 940 01:14:07,000 --> 01:14:12,000 Úps, þar sem ég er að fara? 941 01:14:12,000 --> 01:14:19,000 Ó, er það vegna þess að ég gleymdi að $. 942 01:14:19,000 --> 01:14:25,000 >> Nú ef ég opna-raun, hér, munum við losna við að slá það til a skrá. 943 01:14:25,000 --> 01:14:27,000 Við bara að lesa það. 944 01:14:27,000 --> 01:14:34,000 Hér sérðu að ég hef fengið þetta bókstaflega \ n í strenginn, eins og ekki raunveruleg nýja línu, 945 01:14:34,000 --> 01:14:38,000 og sömuleiðis, í stað þess að í raun interpolating gildi þessarar breytu 946 01:14:38,000 --> 01:14:42,000 það gaf mér $ i sig, sem er góður af a sársauki. 947 01:14:42,000 --> 01:14:46,000 Leiðin í kringum þetta er að nota gæsalappa, 948 01:14:46,000 --> 01:14:52,000 og svo þegar þú notar gæsalappa það mun í raun 949 01:14:52,000 --> 01:14:56,000 almennilega innreiknuð gildi allar þessar breytur hér 950 01:14:56,000 --> 01:14:59,000 og einnig viðurkenna \ n til að vera nýr lína að það er 951 01:14:59,000 --> 01:15:02,000 og ekki \ n. 952 01:15:02,000 --> 01:15:07,000 Notkun einstaklings sjálfur er ágætur þegar þú ert 953 01:15:07,000 --> 01:15:10,000 stafir sem gætu túlka sem sértákn því þá þú þarft ekki að 954 01:15:10,000 --> 01:15:15,000 flýja þá stöðugt. 955 01:15:15,000 --> 01:15:18,000 Hlutur getur fengið sóðalegur, og oft eins og ég að gera það, 956 01:15:18,000 --> 01:15:24,000 bara til að gera hlutina auðvelt er að ef ég ætla að hafa neitt 957 01:15:24,000 --> 01:15:31,000 HTML eins og í númerið mitt ég ma breyta í einn quotes 958 01:15:31,000 --> 01:15:36,000 og þá nota þetta samtenging rekstraraðila 959 01:15:36,000 --> 01:15:43,000 til concatenate breytur inn 960 01:15:43,000 --> 01:15:47,000 Þetta er önnur leið til að gera það 961 01:15:47,000 --> 01:15:52,000 þar sem við höfum fengið að punktur sem er að fara að tengja þetta er strengur 962 01:15:52,000 --> 01:15:56,000 með þetta með þetta með þessu, 963 01:15:56,000 --> 01:15:59,000 og nú er ég ekki að flýja þessar gæsalappa. 964 01:15:59,000 --> 01:16:02,000 Ég þarf ekki að nota þessa dagana til að flýja. 965 01:16:02,000 --> 01:16:08,000 Þeir ætla bókstaflega að prenta út eins gæsalöppum og svo þennan gaur hérna. 966 01:16:08,000 --> 01:16:11,000 Þetta er önnur leið til að blanda öllu saman. 967 01:16:11,000 --> 01:16:14,000 >> [Nemandi] Einnig, þegar þú echoed gettype voru engar gæsalappir á öllum. 968 01:16:14,000 --> 01:16:22,000 Einmitt, svo er echo konar sérstakt í þeim skilningi að þú þarft ekki að sviga. 969 01:16:22,000 --> 01:16:29,000 Þú þarft ekki að hafa gæsalappirnar endilega um breytur, 970 01:16:29,000 --> 01:16:37,000 eins og það er í gildi að segja echo $ i, og það er að fara að túlka þetta sem band. 971 01:16:37,000 --> 01:16:44,000 Það er að fara að gera kastað, svo við gætum gert þetta, og það er gilt líka, en við þurfum ekki. 972 01:16:44,000 --> 01:16:48,000 Það er valfrjálst. 973 01:16:48,000 --> 01:16:53,000 Í setja vandamál í þessari viku lítur út fyrir a einhver fjöldi af þessu tagi af efni 974 01:16:53,000 --> 01:16:58,000 þar sem þú ert að blanda og jafningi HTML með PHP 975 01:16:58,000 --> 01:17:08,000 bara svona, og nú ef við fletta til baka og við keyra þetta 976 01:17:08,000 --> 01:17:13,000 getum við séð að við hafa a heild búnt af gildum valkostur 977 01:17:13,000 --> 01:17:15,000 að bara prenta út. 978 01:17:15,000 --> 01:17:20,000 Við höfum allt þetta HTML sem fékk mynda mjög fljótt fyrir okkur. 979 01:17:20,000 --> 01:17:22,000 Ég leyfi það sem æfingu. 980 01:17:22,000 --> 01:17:24,000 Það er mjög svipað og að skrá lestur sem við gerðum áðan. 981 01:17:24,000 --> 01:17:31,000 >> Það er concentrations.txt skrá sem þú getur rífa niður af CDN, 982 01:17:31,000 --> 01:17:34,000 og þú getur opnað hana með sama framhandleggur bragð sem við gerðum áðan, 983 01:17:34,000 --> 01:17:39,000 og framhandleggur þú verður bara að bergmála valkost og stinga í 984 01:17:39,000 --> 01:17:44,000 viðeigandi gildi, viðeigandi takka og vísitölur, 985 01:17:44,000 --> 01:17:49,000 og þá þú fá falla niður sem bókstaflega býr 986 01:17:49,000 --> 01:17:54,000 kerfisbundið fyrir þig allar mismunandi styrk við Harvard. 987 01:17:54,000 --> 01:17:57,000 A handlaginn hlutur til að hafa. 988 01:17:57,000 --> 01:18:02,000 There er a einhver fjöldi af stillingar efni fyrir þetta verkefni. 989 01:18:02,000 --> 01:18:07,000 Ef þú hefur ekki gert það að taka nú þegar næsta hálftíma, klukkustund, 990 01:18:07,000 --> 01:18:10,000 einhvern tíma í kvöld örugglega fyrir víst, 991 01:18:10,000 --> 01:18:14,000 ganga í gegnum ákveðið vandamál sérstakur, 992 01:18:14,000 --> 01:18:20,000 sjá hvað er að gerast með að setja upp vhosts, the heimamaður gestgjafi, öll þessi efni. 993 01:18:20,000 --> 01:18:24,000 Eitt sem þarf að benda á núna er að 994 01:18:24,000 --> 01:18:30,000 í flestum vandamál setur við höfum verið að fara inn í Dropbox möppuna þína 995 01:18:30,000 --> 01:18:34,000 og þá að sækja setja vandamál zip skrá og unzipping það. 996 01:18:34,000 --> 01:18:36,000 Fyrir þetta vandamál setja þú vilt ekki. 997 01:18:36,000 --> 01:18:40,000 Þú vilt fara í þennan vhosts skrá. 998 01:18:40,000 --> 01:18:45,000 Þú þarft að fara í vhosts og fara í the heimamaður gestgjafi skrá í það, 999 01:18:45,000 --> 01:18:50,000 og þetta er þar sem þú þarft að rífa niður the zip skrá, 1000 01:18:50,000 --> 01:18:55,000 renna niður hana, og fá tilbúinn til að fara. 1001 01:18:55,000 --> 01:18:57,000 Þú þarft að fylgja leiðbeiningum vel. 1002 01:18:57,000 --> 01:19:02,000 >> Ef þú hefur einhverjar spurningar skaltu senda tölvupóst, senda það á ræða, koma á skrifstofu tíma. 1003 01:19:02,000 --> 01:19:08,000 Takk krakkar. Í næstu viku ætlum við að hafa endurskoðun fundur fyrir próf. 1004 01:19:08,000 --> 01:19:12,000 Njóttu síðustu vandamál þitt. Ég vona að það gengur allt mjög vel. 1005 01:19:12,000 --> 01:19:14,000 [CS50.TV]