[Powered by Google Translate] [Wythnos 8] [David J Malan] [Harvard University] [Mae hyn yn CS50.] [CS50.TV] Croeso yn ôl. Mae hyn yn CS50, ac mae hyn yn dechrau o wythnos 8. Mae cwpl o gyfleoedd yr wythnos hon, yn eu plith y sgwrs yma, lle bydd rhywfaint o fwyd yn cael ei weini. Am fwy o fanylion edrychwch ar y sleidiau ar-lein. A hefyd digwyddiad arall yr wythnos hon gan ein hunain Thomas Carriero. Mae'n un o CS50 yn cymrodyr addysgu cyn-bennaeth sydd yn awr yn Dropbox, ac ef yw'r dyn sy'n fachog ni i fyny gyda'r eich bod yn gwybod beth, felly os ydych eisiau mwy o hynny pen eu sgwrs y prynhawn yma am Dropbox a mwy. CS50 cinio yn y dydd Gwener hwn. Ymunwch â ni os ydych yn gallu, 1:15, fel arfer, yn Tân ac Iâ. Ac yn awr rydym yn plymio i mewn i rywbeth o'r enw Seminarau. Mae ein CS50 Seminarau, galw i gof, a yw'r rhain yn ddosbarthiadau dewisol a arweinir gan y cymrodyr addysgu cynorthwywyr cwrs a a chyfeillion y cwrs, Folks o grŵp ar y campws a elwir yn ABCD, sy'n grŵp o technophiles ar y campws, yn ogystal â grŵp o'r enw HCS, y Gymdeithas Gyfrifiadurol Harvard, israddedigion sydd â diddordeb yn yr un modd mewn cyfrifiadureg. Roster eleni o seminarau yn cynnwys seminarau ar Android a iOS a JavaScript a PHP, Unix, Vim, a mwy, felly yn sylweddoli bod y seminarau hyn yn dod i fyny. Os hoffech chi i ateb ar gyfer unrhyw un ohonynt yn bennaeth i'r URL yno. Yna byddwn yn postio ar wefan y cwrs yr amserau a'r lleoedd ar ôl iddynt gael eu cwblhau. Ond yn gwybod gwerth mae 'na 5 mlynedd o seminarau blaenorol gael ar-lein, llawer ohonynt yn dal i fod ar hyn o bryd o ran technolegau gallech fod eisiau chwarae gyda ar gyfer eich prosiectau terfynol, felly yn bennaeth yno am rai fideos sydd ar gael ohono. CSS, y rhai ohonoch sy'n gyfarwydd â'r CSS yn barod, beth ydyw yn gryno? Beth yw CSS? Mae'n dalennau arddull rhaeadru, a beth mae hynny'n ei olygu? Beth mae hynny'n ei wneud i ni, CSS? Mae pob hawl, gadewch i gynhesu i fyny gyda un yn haws, HTML, hypertext markup iaith. Beth mae hynny'n ei wneud i ni? Unrhyw un o gwbl? Mae'n mynd yn lletchwith iawn yn gofyn y cwestiynau hyn. HTML, hypertext markup iaith. Ydw? Na? [Ymateb y myfyrwyr Anghlywadwy] Iawn, da, mae'n ein galluogi i farcio testun i ddangos mewn porwr gwe. Dyw hi ddim yn iaith raglennu. Mae'n wir yn iaith markup, sy'n golygu ei fod yn cyfarwyddo'r porwr sut i arddangos gwybodaeth, felly mae'r ymgnawdoliad symlaf o hyn wrth i ni wedi gweld yn rhywbeth syml fel super boldfacing, agored braced braced ar gau b yn dweud gwneud y testun trwm, ac sydd mewn gwirionedd dim ond un o nifer o ffyrdd y gallwn wneud hynny, ac yn wir, y dyddiau hyn dull gwell i stylizing eich tudalen ar y we, gwneud pethau trwm ac italig a ganolog ac yn cyfiawnhau ac yn y blaen, yn cael ei wneud drwy tagiau HTML yn unig ond yn hytrach gyda thechneg a elwir yn CSS, dalennau arddull rhaeadru. Mae hyn yn iaith iddo'i hun. Mae'n nid yn rhy yn iaith raglennu ond- bawb, mae hyn yn Dan, sy'n cadw ymuno â ni heddiw. Mae rhai anawsterau technegol. Ddim yn broblem. CSS yn caniatáu i ni stylize tudalen drwy osod hyn a elwir yn eiddo, felly gadewch i ni edrych ar hyn drwy gyfrwng rai enghreifftiau sylfaenol. Gadewch i mi fynd i mewn i'r peiriant heddiw. Mae gen i'r cyfeiriadur ffynhonnell Dydd Llun 8 yn y fan hon, ac rydw i'n mynd i fynd i mewn i cyfeiriadur o'r enw CSS lle mae gennym griw gyfan o ffeiliau yn aros i ni dde yma, ac yn y ffolder hwn gennym, er enghraifft, search0.html o'r tro diwethaf. Nawr, yn cofio gyda search0 i ni adael ar y nodyn drwy fath o weithredu Google neu mewn gwirionedd dim ond y pen blaen ar ei gyfer wythnos neu ddwy yn ôl, ac yn sylwi ein bod wedi cael rhywfaint o tagiau newydd yno. Cawsom h1 ar gyfer mawr, pennawd beiddgar, ffurflen hon, a oedd yn caniatáu i ni mewn gwirionedd yn cael ffurflen HTML ar gyfer mewnbwn defnyddwyr. Gweithredu, beth oedd ystyr y priodoledd gweithredu ar y tag HTML ffurflen? Beth oedd ystyr y weithred hon,? Dim ond bydda i'n gwneud hyn heddiw. Gweithredu yw'r gyrchfan i ble y ffurflen yn mynd i gael ei gyflwyno. Mae'r ffaith fod hynny'n dweud action = "google.com / chwilio" golygu, pan fydd y defnyddiwr yn clicio ar y botwm cyflwyno neu gyfatebol mha bynnag ffurf meysydd y maent llenwi allan yn mynd i gael eu hanfon i beidio â ein gweinydd neu ein offer ond yn hytrach i'r URL penodol ar Google. A'r dull y mae'n mynd i ddefnyddio ei enw gael, a chael, am y tro, yn unig yw techneg ar gyfer trosglwyddo gwybodaeth draw i weinydd y we drwy gyfrwng y URL, felly gadewch i ni edrych gyflym yn ôl ar sut mae hyn yn gweithio. Sylwch fod yna mewnbwn y mae ei enw i yw q mae ei fath yn destun ac yna fewnbwn ail fath cyflwyno y mae eu gwerth yn CS50 Chwilio, ac yn wir, os ydym yn agor y ffeil yma, search0.html, mae'n fath syml super, ac os byddaf yn chwilio am rywbeth fel gwyddoniaeth gyfrifiadurol ac yna pwyswch enter neu cliciwch ar CS50 Chwilio sylwi bod yr hyn sy'n digwydd yw y tu hwnt i ddod i Google Rydw i wedi dod i ben yn benodol ar hyn o URL ar y brig, google.com / search? q = + cyfrifiadur gwyddoniaeth, a gwyddoniaeth gyfrifiadurol yn amlwg yn yr hyn yr wyf deipio i mewn Mae'r + yn unig yn golygu dyna lle mae cymeriad gofod yn, ac mae'n ei wneud gan y porwr yn unig i wneud yn siŵr nad oes unrhyw dryswch a gofod gwyn yn y URL ei hun. Ac yna q, wrth gwrs, yw'r enw paramedr. Nid ydym wedi gweld sut yr ydym, y rhaglennydd gall, mewn gwirionedd yn cael mynediad q eto. Gallwn gymryd yn ganiataol bod Google yn gwybod beth i'w wneud â hyn yma, ond byddwn yn cyrraedd yno mewn pryd heddiw. Ond gadewch i mi edrych yn hytrach, ar search1.html, sy'n edrych ychydig yn wahanol oherwydd fy mod yn penderfynu bod y ffurflen yma yn unig ychydig yn gloff. Yr wyf yn golygu, 'i' ar yr ochr chwith uchaf. Does 'n sylweddol na estheteg iddo, ac felly yr wyf am stylize hyn ychydig yn fwy fel Google, y mae eu tudalen gartref, galw i gof, er nad efallai y byddwch yn ymweld â hi yn aml, yn edrych fel hyn heddiw ar Nos Galan Gaeaf. Os ydym yn hytrach yn agor fersiwn 1 y ffeil, chwilio 1.html, rwyf wedi canolbwyntio arno. , Still 'n bert hyll, ond o leiaf yn awr rwyf wedi dechrau i reoli estheteg y dudalen hon nid dim ond y marcio i fyny ohono. Gadewch i ni edrych ar chwilio 1, a mae 'n sylweddol ond un gwahaniaeth yma, a allai neidio allan arnoch chi, neu efallai nad, ond beth yw'r llinell un neu snippet o wahaniaeth? Mae hyn yn nodwedd arddull, felly mae'n troi allan bod yn HTML elfennau mwyaf, gall y rhan fwyaf o dagiau briodoledd arddull arnynt, a thu mewn y briodoledd arddull yn llinyn a ddyfynnir, a bod y llinyn a ddyfynnir yn CSS. Gallwch roi taflen arddull rhaeadru i mewn 'na trwy bennu fel enw'r eiddo ddilyn gan colon ddilyn gan werth. Mae hyn yn fath o benderfyniad cynllunio anffodus rai blynyddoedd yn ôl bod CSS yn iaith iddo'i hun, ond syntactically mae'n wahanol iawn i HTML. Yn yr achos hwn, rydym yn gweld bod tu mewn fy tudalen we, a ysgrifennwyd yn HTML, Mae gen CSS tu mewn dyfyniadau hyn, ac y confensiwn ar gyfer CSS yw bod gennych yr hyn a elwir yn eiddo ac yna, unwaith eto, colon, ddilyn gan werth yr eiddo hwnnw, felly does dim arwydd cyfartal. Does dim dyfyniadau ychwanegol. Dim ond y colon gwahanu pâr gwerth allweddol, a llinell testun yn gwneud yn union beth mae'n ei ddweud. Mae'n alinio testun yng nghorff y dudalen, sydd mewn gwirionedd yn ddigon dewr y dudalen, yn y ganolfan. Iawn, y canlyniad terfynol yna, er mwyn bod yn glir, a yw hyn. Nid yw pob sy'n sexier, ond o leiaf mae'n canolbwyntio ac ychydig yn fwy fel Google go iawn. Ond beth os wyf yn hytrach yn agor fersiwn 2 o'r ac yn nodi i lawr yma tag newydd yn gyfan gwbl? Nawr yn y pen fy nhudalen, a oedd yn flaenorol yn unig oedd â tag yn yr holl enghreifftiau blaenorol? 'I jyst yn cael y, y teitl. Mae hyn o bryd yn ôl y tag pen yn edrych fel hyn. Nawr yn hytrach mae ganddo y tu mewn tag arddull ohono, ac mae hyn hefyd, yr wyf yn ymddiheuro, syntactically edrych yn wahanol iawn o HTML, ond byddwch yn cael i arfer ag ef, lle tu mewn i'r tag arddull Gallaf yn awr ffactor allan beth oedd funud yn ôl Gall priodoledd, y briodoledd arddull, ac yr wyf yn ei roi ar frig fy dudalen. Pam? Wel, mae hwn yn gam tuag at glanhau pethau i fyny, yn debyg iawn yn ysgrifenedig C cod byddem weithiau yn ysgrifennu swyddogaethau i ffactor allan ymarferoldeb cyffredin. Mae'n dim ond ychydig glanach i ddechrau ffactoreiddio pethau fel y estheteg i un lleoliad canolog yn hytrach na chael y cyfan intersperse drwy gydol eich HTML. Mae hyn hefyd yn gwneud yr hyn mae'n ei ddweud, er bod 'na dipyn o gystrawen newydd. Mae hyn dyma yw dewiswr, a'r corff yn unig yn golygu dewis yr elfen corff a chymhwyso'r eiddo canlynol iddo. Wel, mae'r eiddo yn union yr un fath. Ar gyfer mesur da rwyf wedi ychwanegu hanner colon ar y diwedd, sy'n tueddu i fod yn gonfensiwn, ac rydw i wedi lapio eiddo hwn cyfan mewn braces cyrliog gan y gallai Fi 'n weithredol yn cael pethau gwahanol yma. Gallai Fi 'n weithredol yn dweud rhywbeth fel lliw: glas; Nawr mae hyn heb fod yn rhy yn mynd i fod yn gam tuag at unrhyw beth i gyd fod prettier, ond os wyf yn awr yn mynd yn ôl i'r fersiwn 2 rwyf wedi o leiaf gwneud yn awr y corff fy destun tudalen yn yr holl las. Mae'r botwm yn aros yr un fath oherwydd mae hynny'n mewnbwn. Dyw hi ddim yn destun pur. Ond mae popeth arall sy'n destun, fel CS50 Chwilio i fyny top, yn las gwirionedd. Unwaith eto, y cyfan rydym wedi gwneud yn awr yn tynnu oddi ar y tag corff, hysbysiad, y briodwedd arddull ac rydym wedi ffactora arno yma. Nid yw hyn yn welliant mawr, ond os ydym yn cymryd hyn un cam ymhellach sylwi ar yr hyn y gallwn ei wneud yn y trydydd fersiwn yma. Yn search3.html y dudalen we bron yn union yr un fath ac eithrio ar gyfer yr hyn tag newydd yn awr? Link, felly nid yw'r un yn addas, a enwir yn oherwydd nad ydych yn cysylltu yn yr ystyr o hypergyswllt cliciadwy. Yn hytrach, rydych yn fath o wneud yr hyn sy'n cyfateb o # cynnwys yn C lle mae'r tag cyswllt gyda priodoledd href a briodoledd rel dweud mynd yn ei flaen a chopi gludo cynnwys y ffeil o'r enw search3.css iawn yma, yn ei hanfod. Nid yw'n hollol wneud hynny, ond dyna ysbryd y llythyr hwnnw. Mae'n dweud yn mynd agored ffeil, search3.css, ac yn ei drin fel pe bai'r defnyddiwr wedi ei deipio'n iawn yma yn yr ben y dudalen yn union fel y gwnes i yn yr enghraifft flaenorol. Search3.css, yn y cyfamser, yn eithaf syml. Mae'n mewn gwirionedd dim ond yn cynnwys yn union yr hyn a oedd funud yn ôl yn y tag arddull, ond yr wyf i wedi ffactora arno yma at ei ffeil ei hun. Hyd yn oed er nad ydym wedi treulio llawer o amser o gwbl yn HTML neu ar y we rhaglennu dim ond yn reddfol beth yw'r cymhelliant, efallai, am ffactorio allan hwn yn snippet bach hyd yn oed o CSS yn ei ffeil ei hun ac yna ei gynnwys gyda'r tag cyswllt yma? [Ymateb y myfyrwyr Anghlywadwy] Iawn, mae'n haws i'w darllen yn yr ystyr bod gennych eich CSS mewn ffeil CSS. Rydych wedi eich HTML yn eich ffeil HTML, felly mae'n fwy darllenadwy yn hynny o beth. Beth allai arall yn gymhellol? Yeah. [Ymateb y myfyrwyr Anghlywadwy] Yeah, fel y gallwch ei gynnwys nifer o weithiau, felly ar hyn o bryd rydym yn gwneud y enghreifftiau sylfaenol gyda ffeiliau unigol, ond mae'n debyg eich bod mewn gwirionedd yn gwneud gwefan go iawn fel chi bydd i pset 7 neu eich prosiect terfynol efallai, ac rydych am gael tudalennau gwe lluosog, fel sy'n sicr yn gyffredin ar byddai'r We Fyd-Eang go iawn, a gall fod yn fath o gloff rhaid i adysgrifia a bastio y lliw glas yr un a'r un testun cyd-fynd ganolfan ym mhob un o'r tudalennau hynny. Yn hytrach, mae'n gwneud mwy o synnwyr i ffactor allan, yn debyg iawn rydym wedi ei wneud yn C gyda'r. ffeil h, rhowch ef yn un lle canolog, yn yr achos search3.css, ac yna gadael unrhyw ffeil yn eich gwefan i mewn gwirionedd yn cynnwys y ffeil drwy gyfrwng y tag yma yn llinell 16. Fel sy'n nodweddiadol yn wir, rydym yn dechrau gyda fersiwn 0, pa fath o waith ond nid o reidrwydd y gorau, a gyda phob cam, chwilio 1, chwiliad gan 2 o, ac yn awr chwilio 3 rydym wedi cymryd y camau hyn babi tuag at ddyluniadau sydd yn lanach bach ac maent yn fwy paratoadol ar gyfer tudalennau mwy cymhleth y gallai rydym yn ei wneud i lawr y ffordd. Gadewch i mi agor i fyny un enghraifft olaf yma dim ond i ddangos tudalen hyd yn oed mwy arddull, ond yn gyntaf gadewch i ni edrych ar y HTML. Mae hyn yn search4.html, ac yn sylwi bod strwythurol 'i' bron yr un fath ac eithrio ar gyfer cyflwyno tag newydd, Div. Div yn tag sy'n cyflwyno is-adran y dudalen. Gallwch feddwl am hyn fel petryal anweledig. Mae'n fath o creu swath o ardal yn y webpage y gallwch stylize i gyd ar unwaith. Hyn yr wyf wedi ei wneud yma fel a ganlyn. Y tu mewn fy, tag corff sydd wedi bod yno ar hyd, I ddim yn dweud creu adran y dudalen yma trwy llinellau 45 trwy 47, ac mae hynny'n golygu yn y bôn yn rhoi i mi petryal anweledig ar hyd pen uchaf y dudalen. Yna yn rhoi i mi petryal ail er anweledig, isod, ar ac yn nodi iddo gan gynnwys enw, ac yna yn olaf, yn rhoi i mi is-adran o dair o'r dudalen ar y gwaelod a elwir yn ID. Byddwn yn gweld pam rwyf wedi gwneud hyn mewn dim ond hyn o bryd, ond yn gysyniadol gen i is-adran header. Mae gen i is-adran gynnwys, ac mae gen i is-adran troedyn y dudalen er bod y rhain yn unig yn markup. Nid yw'r defnyddiwr yn mynd i weld 3 phetryal, ond math o strwythur yno y tu ôl i'r llenni eu bod mewn gwirionedd yn bresennol. Yn awr, sy'n gofalu? Pam mewn gwirionedd yn gwneud hyn? Mae popeth arall ar y dudalen yr un fath fel yr ydym wedi ei weld o'r blaen. Dyma fy ffurflen. Dyma fy mewnbwn, fy mewnbwn, toriad llinell ac yn y blaen. Dyma lun, fodd bynnag, felly byddwn yn gweld lle mae hyn yn dod o mewn dim ond hyn o bryd. Dyma droedyn, sydd yn newydd, dim ond am fy mod eisiau cyflwyno gynnwys rhai yn fwy yma. Os byddwn yn sgrolio i fyny sylwi bod ID y div yn header. Mae ID y div yn fodlon, ac mae ID y mae un yn troedyn. Ac fel mae'r enw yn awgrymu, pan fydd gennych priodoledd ID yn HTML, drwy ddiffiniad mae'n rhaid iddo nodi unigryw un o'r elfennau, un o'r tagiau yn eich tudalen. Mae'r baich yn gwbl arnoch i gofio bod gennych ID pennawd yn barod. Mae gennych troedyn. Mae gennych ID cynnwys eisoes. Nid yw'r cyfrifiadur yn mynd at chyfrif i maes beth yw ID sydd ar gael i chi, felly gallech ddamweiniol yn rhoi 2 tagiau ID y pennawd, ac y byddai dim ond fod yn anghywir. Mae'n rhaid i chi gadw mewn cof yr hyn yr ydych wedi creu, ond unwaith y byddwch wedi gwneud yr hysbysiad hwnnw yr hyn y gallwn ei wneud yma. Gallaf yn awr nodi yn fy tag steil ar y brig neu equivalently yn fy CSS ffeil, os wyf yn dal i ddefnyddio y fersiwn, Gallaf ddweud # pennawd, a beth mae hynny'n ei olygu yw bod beth bynnag tag yn y wefan hon yn cael ID y pennawd a #, dim ond drwy gonfensiwn ddynol, yn cynrychioli ID. Mae'r arwydd miniog neu punt arwydd yn cynrychioli ID. Pennawd yw'r enw a roddais iddo. Mae hyn yn golygu cymhwyso eiddo hwn CSS i ba bynnag tag yn y dudalen hon yn dwyn ID o header. Un fargen yma. Gwneud cais yr eiddo hwn, sy'n digwydd bod yn yr un fath, i unrhyw elfen y mae eu ID yn fodlon, ac yna i lawr yma sylwi Cefais ychydig ffansi gyda troedyn. Unrhyw elfen sydd ID yn troedyn, y gall dim ond un drwy ddiffiniad, mynd yn ei flaen ac yn gwneud ei faint ffont llai, ei bedyddfan, beiddgar pwysau ei ymyl 20 picsel. Beth mae hynny'n ei olygu? Mae'n dim ond elw ar y top, y gwaelod, ac i'r chwith a'r dde. Mae hyn yn golygu rhoi i mi ymyl 20-pixel anweledig o'i amgylch dim ond er mwyn gwthio popeth arall i ffwrdd oddi wrtho ychydig bach, fel y gallech ei wneud yn Word, Microsoft Word neu Dudalennau neu yn y blaen. Ac yna destun alinio i'r canol. Gadewch i ni weld y canlyniad terfynol, ac yna byddwn yn mynd yn ôl i fyny i'r snippet un sy'n weddill o CSS yno. Mae hyn yn fersiwn 4, ein olaf ar gyfer yr enghreifftiau chwilio, ac mae'n llawer, llawer sexier. Yn awr, er tegwch, Fi jyst Googled "generadur ffont google logo." A dyna fy ngalluogi i greu GIF, fformat delwedd, sy'n edrych fel nad oes. Yn wir, gallwch wneud hyn hefyd. Mae gennym "google ffontiau logo generadur." Gadewch i ni weld os allwn wneud hyn. Iawn, yr wyf yn credu mai dyma'r wefan wyf yn ei ddefnyddio. Gallwn ddweud CE 10, er enghraifft, ac yn gwneud iddynt eu hunain. Gallwch chwarae gyda hyn drwy'r dydd ac yna i'r dde chlecia arni ac yna lawrlwythwch y GIF gwirioneddol, sef y cyfan a wneuthum. Ac yn wir, dyna pam yn fy HTML, galw i gof, dros yma Cefais tag delwedd, a gwelsom yr wythnos diwethaf yn fras sy'n tarddu o logo.gif. A beth unwaith eto oedd y cymhelliant dros gael y priodoledd alt, hwn yn nodwedd arall? Yeah. [Ymateb y myfyrwyr Anghlywadwy] Da, felly 2 reswm mewn gwirionedd, os na all y porwr dynnu i fyny y ddelwedd oherwydd bod gennych gysylltiad rhwydwaith araf neu'r ddelwedd yn cael ei llygru neu rywbeth fel 'na o leiaf gall y dynol gweler "CS50 chwilio," ac yna hefyd am resymau hygyrchedd. Os oes gennych defnyddiwr sydd yn ddall ac yn defnyddio darllenydd sgrin ac felly ni ellir amlwg weld delweddau gallant o leiaf clywed testun os yw eu cyfrifiadur yn siarad iddyn nhw. Yn gyffredinol, mae hyn yn arfer gorau pan ddaw i hygyrchedd tudalennau fel y gall defnyddwyr hyd yn oed yn y sefyllfa honno clywed neu weld, fel petai, beth ydyw sydd ar eich tudalen. Mae un peth arall yr wyf wneud hynny yma sydd ychydig yn ddiddorol, a byddwn yn gweld mwy am hyn yn broblem yn gosod 7 trwy un o'r shorts a arweinir gan un o'r cymrodyr addysgu. Ond # cynnwys yn cyfeirio at y tag y mae eu ID yn fodlon, ond yna mae 'na gymeriad gofod, ac yna mae y gair mewnbwn. Wel, beth sy'n ddiddorol am CSS yw eich bod yn gallu cyfeirio at tagiau mewn rhyw fath o dudalen hierarchaidd, a beth mae hyn snippet o CSS yn ei olygu yw dod o hyd i'r tag y mae eu ID yn fodlon, ac yna gwneud cais yr eiddo canlynol i bob un o'r tagiau mewnbwn sy'n ddisgynyddion o gynnwys, hynny yw bod yn cael eu mewnoli tu mewn iddo. Mewnoliad ar, unwaith eto, yn unig yn bwysig i'r cyfrifiadur, nid i'r dynol, ond drwy gonfensiwn rydym indent pethau wrth i ni fynd yn ddyfnach i mewn dudalen, felly mae hyn yn golygu defnyddio ymyl o 5 picsel i unrhyw elfen mewnbwn sy'n rhywle tu mewn neu y tu mewn i nythu o  yr elfen y mae eu ID yn fodlon. Pwy mae hynny'n berthnasol? Wel, mae mewn gwirionedd dim ond y 2 guys yma. Sylwch fod tu mewn y ffurflen mae 2 mewnbynnau, fel y mae wedi bod ar gyfer yr holl enghreifftiau hyn. Ond sylwer nad y 2 mewnbynnau yn digwydd bod yn nythu tu mewn, er ychydig yn ddwfn, a haenau cwpl o bant, tu mewn i'r tag adnabod yn ei gynnwys. Beth yw ystyr hyn? Os ydym yn mynd i'r porwr yma gallwch weld erioed mor ychydig- gadewch i mi chwyddo i mewn-bod ychydig o padin rhwng y botwm a rhwng y maes testun. Gadewch i mi dros dro droi bod i ffwrdd. Gadewch i mi fynd i fyny i fy CSS, a gadewch i mi fynd yn ei flaen a dim ond newid y ffin o 5 i 0 picsel picsel. Gadewch i mi fynd yn ei flaen wedyn ac yn arbed y ffeil, ewch yn ôl i'r peiriant chwilio ac yn ail-lwytho, a gwyliwch ganol y dudalen. Popeth got cywasgedig gyda'i gilydd, a phan tro cyntaf i mi ei chwipio yr enghraifft hon i fyny Roeddwn i'n meddwl oedd yn edrych yn dwp â'r maes testun ac yna ar y botwm union o dan ei. Roeddwn i eisiau pad ei fod yn ychydig bach, felly cyflwynais ymylon. Yr hyn na fyddwn yn ei wneud mewn darlithoedd yw mynd trwy'r dwsin nifer o Eiddo CSS sy'n bodoli oherwydd, unwaith eto, mae yna bethau fel maint y ffont, , pwysau ffont maint, testun alinio, ac o rai eraill dwsin o ychydig, a byddwn yn eich cyfeirio yn broblem yn gosod 7 i sesiynau tiwtorial ar-lein amrywiol a chyfeiriadau sy'n caniatáu i chi ddewis y pethau hyn i fyny. Ond yr hyn sy'n wirioneddol bwysig ar ddiwedd y dydd yw deall sut y pethau hyn yn cael eu cymhwyso. Unwaith eto, os oes gennym y tu mewn tag arddull sydd Gall fynd y detholwyr, mae'r math o adnabod sy'n nodi i bwy ydych chi eisiau gwneud cais yr adeiladau hyn, ac yna rydych yn rhoi'r eiddo fel pâr gwerth allweddol gwahanu gan colon, ac a ddaeth i ben gyda hanner colon, neu gallwch RIP i gyd allan ac yn ei roi mewn ffeil CSS ar wahân efe ei hun. Mae pob hawl, unrhyw gwestiynau ar y cysyniadau neu y darlun mawr o CSS? Byddwch unwaith eto gweld mwy ohono yn pset 7, ond byddwn yn cadw yn gyffredinol yn eithaf syml. Na? Mae pob hawl. Mae'n amser i fod yn iaith raglennu go iawn, a byddwn yn dod yn ôl i ychydig o CSS ar ffurf enghraifft. PHP mewn gwirionedd yn iaith hynod hygyrch gan ei fod yn syntactically bron yn cyfateb i C. Mewn geiriau eraill, os ydych yn gwybod C, eich bod yn gwybod am y PHP rhan fwyaf, o leiaf syntactically, er bod rhai nodweddion newydd ac mae rhai cysyniadau newydd bydd rhaid i ni edrych arnynt. Ond ar gyfer y rhan fwyaf, yn awr ein bod yn trosglwyddo o C i PHP y rhan fwyaf o'r stwff newydd yn wirioneddol yn y llun mawr, sut rydych chi'n defnyddio iaith i raglen ar y We yn hytrach na ar y llinell orchymyn neu mewn brydlon amrantu fel yr ydym wedi bod yn ei wneud hyd yn hyn. Er gwybodaeth, yn enwedig gyda pset 7 a'r ymlaen prosiect terfynol, yn manteisio ar y URL yma os hoffech i ddarllen i fyny ar y ffurfioldebau o PHP. Mae'n mewn gwirionedd yn hoffi gwerslyfr ar-lein rhad ac am ddim yn effeithiol, a byddwch hefyd yn canfod bod yr hyn sy'n wirioneddol braf am PHP yw bod cannoedd o swyddogaethau sy'n dod gydag ef, tra yn C na wnaethoch chi o reidrwydd yn cael mynediad at swyddogaethau mwy nag oedd yn y llyfrgell mathemateg, y llyfrgell CS50. Yn PHP a llawer o ieithoedd modern, Python a Ruby yn eu plith, byddwch yn cael mynediad i wneud hynny o swyddogaethau llawer mwy, sy'n golygu eich bod yn cael i ysgrifennu llawer cod llai oherwydd gallwch sefyll ar ysgwyddau pobl eraill sydd eisoes wedi ysgrifennu rhai pethau i chi. Gadewch i ni fynd ar daith gyflym o gystrawen PHP ac yna ysgrifennu ychydig o enghreifftiau. Beth braf am PHP gyntaf ac yn bennaf yn cael ei nad oes prif swyddogaeth. Os ydych am ysgrifennu rhaglen yn PHP 'ch jyst dechrau ysgrifennu cod, ac nid oes rhaid i chi boeni am brif. Does dim int. Does dim dychwelyd. Does dim, argv argc sydd ei angen pan fyddwch yn ysgrifennu y rhaglen. Yn hytrach, gallwch dim ond dechrau ysgrifennu cod, ac mae hyn yn rhannol oherwydd PHP yn hyn a elwir yn iaith dehongli. C Lluniwyd, ac iddi gael ei llunio yn yr ystyr eich bod yn dechrau gyda cod ffynhonnell, rhedeg trwy Clang, sy'n compiler, ac yn y pen draw ar ôl rhyw nifer o gamau rydych yn cael, cod gwrthrych 0au ac 1. PHP a Python a Ruby a Pearl ac eraill gwahanol fathau o ieithoedd gan nad ydych yn llunio nhw. Dydych chi ddim yn mynd o cod ffynhonnell i 0s a 1s. 'Ch jyst yn rhedeg y cod ffynhonnell, a byddwch yn rhedeg y cod ffynhonnell drwy ysgrifennu mewn ffeil testun arferol, yn dod i ben yn. php yn yr achos hwn yn hytrach na. c, a'r hyn y mae'r rhaglen yn ei wneud ar eich cyfrifiadur mae'n llythrennol yn dehongli eich llinell cod gan linell wrth linell. Mewn geiriau eraill, yn hytrach nag ysgrifennu rhaglen a rhedeg y rhaglen uniongyrchol chi yn hytrach na ysgrifennu rhaglen gyda ffeil dod i ben yn. php. Yna byddwch yn rhedeg rhaglen o'r enw gwirioneddol php.exe, os ydych ar Windows, neu dim ond PHP os ydych chi ar Mac OS neu Linux, a'ch bod yn darparu fel mewnbwn i'r rhaglen PHP eich cod ffynhonnell eich hun, a'i bwrpas mewn bywyd yw i ddarllen eich cod top i'r gwaelod, o'r chwith i'r dde, ac nid beth bynnag yr ydych wedi dweud iddo wneud. Gadewch i ni weld beth mae hyn yn mynd i olygu syntactically. Yn PHP mae gennym amodau. Mae'r sleid yn union beth welsoch chi yn ôl yn wythnos 1 oherwydd syntactically amodau, os ac petai arall ac arall yn PHP yn edrych yn union fel hyn. Pan ddaw i ymadroddion boolean maen nhw'n mynd i edrych yn union fel hyn. Pan ddaw i anding pethau at ei gilydd fel booleans mae'n mynd i edrych yn union fel hyn. Switshis yn edrych yr un fath, a byddwch yn cael y budd-dal ychwanegol yn PHP Gallai fod switshis yn C yn unig newid ar golosg neu int. Ni allech newid ar werth llinyn. Yn PHP alli 'n weithredol yn cael mynegiant bod yn newidyn y mae ei gynnwys yn llinyn, a gallwch ei wneud mewn gwirionedd cymharu llinyn yn y ffordd sythweledol go iawn, Nid yw cymharu pwyntydd, er mwyn penderfynu a ddylid gwneud achos i neu j neu rywbeth arall. Byddwn yn gweld bod o bosibl cyn bo hir. Dolenni rhy rhyfeddol yr un fath. I gael dolenni cael initialization, cyflwr, ac mae rhai nifer o ddiweddariadau. Er ddolenni hefyd yn bodoli yn PHP. Wneud tra dolenni hefyd yn bodoli yn PHP, a arrays bodoli yn PHP, ond dyma lle mae'r gystrawen yn dechrau cael ychydig yn wahanol, ond y cysyniadau yr un fath, ac mae'r cysyniadau mewn gwirionedd yr un fath fel yr oeddent mewn 0 Week â Scratch. Yn gyntaf ac yn bennaf yw'r arwydd $. Roedd hwn yn benderfyniad dylunio yn PHP lle unrhyw newidyn yn PHP gan dylunio ddechrau gyda $ arwydd. Does dim rhagor o X, Y, Z. Mae bellach yn $ X, Y $, $ Z dim ond oherwydd. Mae'n rhywbeth i gadw mewn cof, ac yn awr ar yr ochr dde-law hyn yn edrych yn debyg i amrywiaeth, ond ein bod yn defnyddio bachau petryal yma. Yn PHP ac yn JavaScript, gan y byddwn yn y pen draw yn gweld, i ddatgan amrywiaeth ydych yn ei wneud braced agored sgwâr a ddaeth i ben braced sgwâr, ac yna mae gennych restr wahenir gan atalnod o werthoedd, boed ints neu llinynnau neu chars, beth bynnag yr ydych ei eisiau, tu mewn ymadrodd hwnnw yno. Nawr, sut wnaethom ni wneud rhywbeth fel hyn yn C? Beth oedd y cystrawen ar gyfer statically datgan amrywiaeth o rifau hysbys? Roedd braces cyrliog, gwahaniaeth mor fychan yma, ond yn y ddau PHP ac yn y diwedd JavaScript 'i jyst yn defnyddio brackets sgwâr, felly mewn gwirionedd y manylion yn unig yn ddiddorol yma yw yr arwydd $ ar gyfer yr enw amrywiol a hefyd y cromfachau sgwâr, ac mae un peth rhyfedd sydd wedi cael ei hepgor yn ogystal ar yr ochr chwith yr arwydd =. Beth sydd ar goll ein bod wedi bod yn ei gwneud yn ofynnol am wythnosau nawr? Yeah. [Ymateb y myfyrwyr Anghlywadwy] Mae maint, felly does dim sôn am y maint y rhesi. A dweud y gwir, does dim sôn am cromfachau sgwâr ar yr ochr chwith yr arwydd =, a beth arall sydd ar goll o'r llinell? Yeah. >> [Anghlywadwy ymateb y myfyrwyr] Mae'r math, felly beth sy'n ddiddorol yn arbennig am PHP yw nad yw iaith yn gryf deipio fel C yw, ac mae hynny'n teipio yn gryf yn yr ystyr bod yn rhaid i chi ddweud torgoch, rhaid i chi ddweud int, rhaid i chi ddweud arnofio. Anytime ydych am newidyn yn rhaid i chi ddweud wrth Clang beth yw ei fath yn. PHP ychydig yn lazier. Mae'n teipio llac yn yr ystyr y gallwch gael fflotiau a chars a llinynnau a ints ac yn y blaen, ond yr iaith ei hun nid yw'n wir yn poeni beth i'w roi tu mewn newidyn. Nid oes rhaid i chi roi gwybod o flaen llaw pa fath o ddata yn mynd mewn newidyn. Mae'n hollol i fyny i chi, felly mae hwn yn flasus gan nad oes rhaid i chi boeni cymaint am y data teipio ac yn poeni am yr hyn yw eich dadleuon yn ac yn y blaen. Mae hyn hefyd yn golygu yn y pen draw swyddogaethau yn PHP yn mynd i fod yn gallu dychwelyd naill ai y rhan fwyaf int o'r amser, ac efallai unwaith yn tra byddant yn dychwelyd bool, a ffug boolean, er enghraifft, i ddynodi fod rhywbeth wedi mynd o'i le. Mae hyn yn rhoi i ni upsides, ond bydd hefyd yn gwneud i ni yn ôl math o ddyluniad ychydig lazier pan ddaw i ddata teipio. Beth arall sydd i'w cadw mewn cof yma? Newidynnau yn edrych yn eithaf fel hyn, felly $ s = "helo, byd." Dyna efallai inferable gan yr enghraifft flaenorol, ac mae gennym fath arall o ddolen. Mae hyn yn un fydd y byddwn yn gweld unwaith yn tra gan ei fod yn eithaf 'n hylaw, a foreach adeiladu. Yn yr achos hwn, mae'r ddolen foreach yn cymryd y tu mewn o'i cromfachau 3 gair fel arfer, $ Rhywbeth yn gyntaf, sef yr hyn a array ydych chi eisiau ei ailadrodd dros aelodau, yna llythrennol y gair allweddol fel, ac yna yn olaf, enw arall amrywiol eich bod yn cael i ddewis. Gall fod yn foo, bar, neu elfen, a beth y lluniad yn yw os yw'r amrywiaeth $ cynnwys 10 elfen ar bob fersiwn o'r amrywiaeth-ddrwg gennym, ar bob fersiwn o hwn yn ddolen yr elfen amrywiol a elwir yn mynd i gael ei diweddaru i fod yn elfen gyntaf yn yr amrywiaeth, yna ail elfen yn yr amrywiaeth, yna bydd y trydedd elfen y rhesi, a thrwy hynny arbed yr angen i wneud y ychydig yn blino nodiant braced sgwâr a $ I, er mwyn mynegai i mewn arae. PHP yn gwneud gwaith hwnnw i gyd i chi ac ar bob iteriad dim ond dwylo chi i'r elfen nesaf o'r amrywiaeth heb i chi orfod gwybod am neu'n gofalu am ei leoliad mynegai rhifol. Ac yna yn olaf, ar hyn o bryd, mae un nodwedd arall o PHP mae hynny'n mynd i fod yn hynod ddefnyddiol, yn enwedig pan fyddwn yn dechrau rhaglenni ar y We, a bod ei adnabod fel arae cysylltiadol. Mae'r araeau ein bod yn gwybod hyd yn hyn ar 20 eiliad yn ôl ac ar gyfer yr 8 wythnos diwethaf yn cael eu mynegeio'n rhifol arrays, math o araeau traddodiadol lle mae'r mynegeion yn ints, 0, 1, 2, yr holl ffordd ar i fyny. Araeau cysylltiadol yn llawer mwy pwerus. Maent yn caniatáu i chi gael allweddi mympwyol, mynegeion mympwyol a gwerthoedd mympwyol. Tra mewn amrywiaeth draddodiadol ei fod yn 0, 1, 2, mewn amrywiaeth cysylltiadol gallwch gael mynegai neu allweddol o foo y mae eu gwerth yn bar. Yna gallwch gael un arall allweddol ei enw Baz ac y mae eu gwerth yn qux. Unwaith eto, enwau gwyddoniaeth gyfrifiadurol amrywiol dwp generig yma, ond y pwynt yw nad yw'r amrywiaeth oes gan braced 0 neu braced 1. Mae'n hytrach yn mynd i gael braced foo a braced Baz. Mae hyn yn llawer mwy hyblyg yn yr ydym yn mynd i fod yn gallu cysylltu geiriau â geiriau eraill, allweddi gyda gwerthoedd yn gyfan gwbl fympwyol, ac rydym yn mynd i fod yn gallu cael y gwerthoedd hynny yn ôl mewn amser cyson oherwydd o dan y cwfl beth arae cysylltiadol mewn gwirionedd yn mae tabl hash. Dwyn i gof fod tabl hash yn eich galluogi i roi rhywfaint o fewnbwn yn hoffi ei roi yn y David gair os ydych am i fewnosod David i mewn i ryw fath o eiriadur, ac yna i chi fynd yn ôl rhywfaint o werth fel arfer. Yn achos sillafu, yn wir neu'n anwir. David neu beth bynnag mae'r gair hwnnw yn neu nad yw yn y geiriadur. Mae amrywiaeth cysylltiadol mewn gwirionedd yn unig tabl hash, ond mae'n ymgnawdoliad defnyddiwr llawer mwy cyfeillgar ohono. Fel gawn ni weld, mae'n mynd i ganiatáu i ni wneud rhai pethau iawn, yn hawdd iawn. Gadewch i ni edrych ar rai PHP sylfaenol enghreifftiau a gweld beth y gallwn ei wneud gyda'r iaith. Gadewch i mi fynd yn ei flaen ac yn agor i fyny yn ein cyfeiriadur ffynhonnell heddiw ffeil o'r enw hello1.php. Mae'r ffeil hon yn sylwadau mwy nag y mae cod gwirioneddol, felly gadewch i mi mewn gwirionedd yn cael gwared pob un o'r sylwadau gan y ffeil ac anrheg i chi efallai y rhaglen PHP symlaf iawn yma. 5 llinell, ac mae rhai o'r rheiny yn ofod gwyn, felly sylwi ar rai gwahaniaethau allweddol yma. Mae'r ffeil yn cael ei alw hello1.php. Mae'r llinell gyntaf, fodd bynnag, yw , Yn golygu dyna ni am fy cod PHP. Gadewch i ni weld sut i redeg hyn. Rydw i'n mynd i fynd yn ôl at fy ffenestr terfynell yma. Rydw i'n mynd i fynd i mewn i fy cyfeiriadur PHP. Hysbysiad bod gennym criw cyfan o ffeil, cafodd yr un cyntaf yw hello.php. Gadewch i mi fynd yn ei flaen ac yn rhedeg y hello1.php,, rhowch. Gwrthodir caniatâd. Iawn. Sut rydym wedi gosod pethau fel hyn yn y gorffennol? Beth sy'n bod? >> [Anghlywadwy ymateb y myfyrwyr] Rydym angen darllen ac ysgrifennu, ond gadewch i mi wneud ls-l. Cofiwch allbwn hwn braidd yn cryptig lle hello1 ymddangos i fod yn ddarllenadwy ac yn ysgrifenadwy gan i mi ond darllenadwy gan bawb arall. Mae'n troi allan nid yw hyn mewn gwirionedd yn gam yn y cyfeiriad cywir. Y gwahaniaeth, unwaith eto, gyda iaith dehongli yn nad ydych yn rhedeg y rhaglen yn uniongyrchol. Chi yn hytrach na rhedeg cyfieithydd a'i roi y cod eich bod wedi ysgrifennu fel y gellir ei ddehongli fesul llinell. Yn yr achos hwn, y cyfieithydd neu'r rhaglen Fi 'n weithredol am redeg cael ei alw'n llythrennol PHP. Rhywle ar y disg caled o'r offer mae rhaglen Ysgrifennodd rhywun arall o'r enw PHP, neu ar Windows php.exe. Yr hyn yr wyf i'n mynd i wneud yma yw fy mod i'n mynd i mewn gwirionedd yn rhedeg PHP ond yn rhoi fel llinell orchymyn dadl y cod a ysgrifennais, ac yna byddaf yn chwyddo allan a daro chofnoda. Mae'n rhedeg fy rhaglen i mi, top i'r gwaelod, o'r chwith i'r dde. Gadewch i mi fynd yn ei flaen ac yn agor i fyny amrywiant bychan o hyn. Yn rybudd hello2.php bod hyn yn yn bennaf sylwadau, felly gadewch i mi gael gwared o'r rheini fel tynnu sylw, a beth sy'n amlwg yn wahanol yn awr am y ffeil? Mae hyn yn llinell newydd, braidd yn cryptig ar y brig. Yn llinell 1, mae'n #! / Bin / php. Bin yn gonfensiwn ar Linux a Mac OS gyfer binaries, so / bin golygu bod hwn yn ffolder yn cynnwys criw o binaries sy'n cael ei rhaglennu, un ohonynt yn PHP. Y #! yn cael ei llysenw shebang, sef y ffordd gyflym o ddweud ei fod, a beth mae hyn yn golygu yw bod pan fyddwch yn rhedeg y rhaglen erbyn hyn mae 'na awgrym ar frig y ffeil sy'n dweud wrth y cyfrifiadur pa cyfieithydd i'w defnyddio. Mae'n cael ychydig yn blino os ydych wedi dweud wrth eich defnyddwyr a'ch cwsmeriaid "Hey, rydym ysgrifennodd y rhaglen o'r enw hello1.php." Y cyfan sydd raid i chi ei wneud yw rhedeg am byth PHP, ac yna enw'r rhaglen hon. A dweud y gwir, yn unig a fyddai brafiach i redeg hello1.php, ac yn wir, gallwn os byddwn yn gwneud y canlynol. Gadewch i mi fynd ymlaen a gwneud ls-l, a hysbysiad yn hello2 mae'n dal newydd ei ddarllen ysgrifennu ac yna darllen darllen, felly ni allaf wneud hyn eto, hello2.php. Ond rydym yn cyflwyno hyn erioed mor fyr tro diwethaf, 'r archa chmod. Os byddaf yn gwneud chmod x +, sy'n golygu pob executability a throsodd, ac yna hello2.php ac yna gwnewch ls-l eto sylwi ar yr hyn newid. Un, Linux yn dangos i mi yr enw ffeil yn wyrdd i gyfleu'r syniad bod ei cyflawnadwy, ond yn bwysicach, ar yr ochr chwith yn sylwi bod y darn yn cynrychioli x gyfer gweithredadwy bellach wedi cael ei osod. Beth mae hyn yn awr yn golygu yw y gall Rwy'n rhedeg ./hello2.php fel arfer, daro chofnoda, ac oherwydd y shebang ar frig y ffeil mae hynny'n awgrym, unwaith eto, i Linux sy'n dweud ddefnyddio'r cyfieithydd i redeg y ffeil hon. Peidiwch â phoeni am orfodi'r defnyddiwr i deipio mewn gwirionedd. A beth braf yn awr yw ei fod yn fath o amherthnasol i fy nghwsmeriaid neu fy ffrindiau pa iaith Ysgrifennais y rhaglen hon i mewn, fel y gallaf fynd ymlaen â mv ac yn ail-enwi y peth hyn i hello2, er enghraifft. Ac yn awr os wyf yn gwneud ./hello2 ac yn chwyddo allan fy rhaglen yn parhau i redeg. Mae'r estyniadau ffeil yn confensiwn dynol sy'n angenrheidiol ar gyfer rhywbeth fel Clang a Gwneud sy'n edrych ar eu cyfer. Ond ar gyfer PHP, gallwn alw y ffeil unrhyw beth estyniad rwyf eisiau. Gallwn twyllo y byd i feddwl fy mod yn dda iawn yn Ruby, ac roeddwn yn gallu ysgrifennu hello2.rb ac yna rhedeg y, a voila, yn awr yr wyf yn cael y, fersiwn Ruby sydd yn gorwedd gyflawn. Ond mae'r estyniadau ffeil yn ddiystyr os yw'r ffeil yn weithredadwy ac mae hyn yn awgrym arbennig ar ben y ffeil. Yn awr, wrth fynd heibio, gadewch i mi ddangos i chi yn gyflym fersiwn 3, sydd yn fath o dric defnyddiol i wybod. Yn hello3 wnes i rywbeth ychydig yn anghywir y byddaf yn diweddaru'r cod ffynhonnell ar-lein. Yn fersiwn 3 mae'n troi allan bod ar gyfrifiaduron Linux y rhan fwyaf o mae 'na raglen o'r enw Env gyfer yr amgylchedd, a beth allwch chi ei wneud yma yw os nad oes gennych syniad ble PHP yn cael ei osod ar y gyriant caled lleol, gan fod yn wir gallai amrywio yn seiliedig ar y cyfrifiadur bod rhywun yn defnyddio, dim ond dweud env rhedeg Env, sydd ar rhan fwyaf o systemau, a chyfrif i maes lle mae PHP yn. Dim ond tric gyffredin fel nad oes rhaid i chi boeni am ddod o hyd gwybod ble mae rhaglen. Ond os ydych chi'n gofal i ddarganfod ble mae rhaglen yn ac nad ydych wedi gofalu hyd yn hyn gallwch ddefnyddio'r archa. Gadewch i mi chwyddo allan a'r math sy'n php, ac yn sylwi ei fod yn dweud wrthyf ei fod yn mewn gwirionedd yn usr / bin / php. Mae'n fath o gelwydd. Mae hefyd yn bin. Mae'n dim ond dangos i mi y daro cyntaf. Os ydych chi erioed wedi meddwl tybed ble Clang yw, pa Clang, dyna yn usr / bin / clang, sy'n gwneud, usr / bin / gwneud, a beth mae hynny'n ei olygu yw hyn i gyd amser gallech fod wedi bod yn teipio usr / bin / clang fynd i mewn i redeg Clang, ond mae'n fath o ddiflas i wneud hynny, felly mae rhai ffolderi fel usr / bin a bin tybir eu bod yn ddiffygion felly mae'r cyfrifiadur yn gwybod i edrych yn ar eich cyfer. Unrhyw gwestiynau ar ysgrifennu super, super rhaglen World Helo syml yn PHP ac yna rhedeg? Oherwydd hyn byddwn yn dechrau cyflwyno cystrawen fwy cymhellol. Mae pob hawl, yma rydym yn mynd. Mae'r rhaglenni hyn rydym wedi gweld mewn gwirionedd pob un ohonynt o'r blaen. Os byddaf yn agor i fyny, er enghraifft, gadewch i ni wneud beer1.php, ni fyddwn yn mynd drwy sawl fersiwn o hyn, ond hyn a wnes i oedd yr wyf yn eistedd i lawr ac arllwys neu ei drosi fy C cod i PHP cod yma. Mae'r rhan fwyaf o'r uchaf y ffeil yw sylwadau hyd yma. Mae'n troi allan yna yn un swyddogaeth newydd mae angen enw readline. GetString, galw i gof, o ymlaen Wythnos 0 yn beth CS50. PHP dod gyda ei ben ei hun defnyddiwr-gyfeillgar swyddogaeth o'r enw readline bod yn cymryd 1 ddadl sy'n nodi'r brydlon eich bod am ddangos i'r defnyddiwr, a pha readline wneud mae'n cael ei dychwelyd beth bynnag y defnyddiwr mathau mewn Yn yr achos hwn, rwy'n datgan newidyn o'r enw $ n. Rwy'n storio ynddo y gwerth dychwelyd readline ar ôl annog y defnyddiwr gyda llinyn yma. Dim ond i gefnogi, i mewn gwirionedd yn rhedeg y peth hyn, gadewch i mi fynd yn ei flaen ac yn rhedeg php beer1.php. Faint o boteli fydd yna? Gadewch i ni dim ond gwneud 2 y tro hwn. Enter. Dyna i gyd. Mae'r rhaglen yn weithredol union yr un fath â'r fersiwn C o wythnosau yn ôl. Ond syntactically gadewch i ni weld beth sy'n wahanol. Ar ôl i mi gael int o'r hysbysiad defnyddiwr fy mod yn gwneud ychydig o wirio gwall, ac os n yn llai nag 1 I roi'r gorau iddi ac rwy'n argraffu neges ddrwg i'r defnyddiwr ac yn gadael gyda 1. Mae hwn hefyd yn ychydig yn wahanol.  Ym C beth oedd rydym yn ei wneud? Yn C rydym yn dychwelyd 1. Yn PHP i chi adael gyda 1, a dweud y gwir yn yr wyf yn meddwl ychydig yn fwy 'n athrylithgar oherwydd eich bod yn llythrennol yn gadael y rhaglen. Mae pob hawl, ac yna i lawr y gân yma yn blino yn union yr un fath syntactically ac eithrio ar gyfer y newidyn, felly i lawr yma yn llinell 24 ymlaen sylwi ar fy gyfer dolen bron yr un fath, ond yr wyf wedi $ o flaen ia n, a'r hyn hefyd yn colli o llinell 26 yr ydym wedi eu cael yn y gorffennol wrth ddatgan i amrywiol? Does dim fath. Mae'n anghywir yn PHP i ddweud int. Rydych yn syml, nid oes angen i chi wneud hynny. Mae'r cyfrifiadur, y PHP cyfieithydd yn ddigon craff i sylweddoli os ydych yn rhoi nifer o $ I y bydd yn trin ei fel rhif ar eich cyfer chi. Ac yna i lawr dyma ni plwg yn $ i, $ i, $ i - 1. Mae hynny i gyd yr un fath, ac yna i lawr yma rydym yn ei wneud yn "Wow, mae hynny'n blino" printf ac yna ymadael (0). Unwaith eto, mae'r cludfwyd yma yw bod hyd yn oed er ein bod ni'n mynd i wario gymharol ychydig o amser ar PHP, yn sicr erbyn hyn a wnaethom ar C, mae bron yr un fath, ac felly yr hyn y byddwn yn ei wneud heddiw a'r wythnos nesaf a thu hwnt yn canolbwyntio mewn gwirionedd ar rai o'r syniadau newydd. Dim ond i weld bod un peth arall yn cyfieithu drosodd oddi wrth C, hon yn rhaglen syml super a wnaethom yn Wythnos 1 neu 2 sydd wedi'i dorri'n giwbiau gwerth. Ond beth oedd yn ddiddorol ar y pryd am y rhaglen hon yw ei bod yn cyflwynodd y syniad o swyddogaeth arfer ysgrifenedig ein bod yn ysgrifennu ein hunain. Mae'r gystrawen yn PHP bron yr un fath. Dyma fy rhaglen hyd top. Hysbysiad eto absennol yw unrhyw syniad o brif bibellau. I ddechrau ysgrifennu cod, ac mae hyn yn beth sy'n mynd i gael ei chyflawni gan y cyfieithydd. I argraffu x yn awr yn 2, yn ôl pob tebyg. Yna gallaf wneud cais am cubing ... Yna Galwaf y swyddogaeth ciwb a phasio yn $ x ac yn aseinio'r gwerth dychwelyd i $ x. Yna gallaf hawlio ei fod yn giwbiau, ac yna yr wyf yn dweud hyn, y gobaith yn dweud yn awr x 8. Mae cystrawen ar gyfer y swyddogaeth yn PHP yn erioed mor ychydig yn wahanol. Unwaith eto, ar goll yw'r math dychwelyd. Unwaith eto, ar goll yn y math dychwelyd a hefyd ar goll yn yr hyn fath arall? [Ymateb y myfyrwyr Anghlywadwy] Wel, iawn, sy'n dda. Gadewch i ni ddod yn ôl at hynny mewn eiliad. Nid oes gennym, er enghraifft, int yma. Nid ydym, er enghraifft, wedi int yma oherwydd, unwaith eto, yn PHP rydych yn syml, nid oes angen i chi ac ni ddylai wneud hynny, ond yn hytrach mae hyn yn keyword newydd o'r enw swyddogaeth. Yn PHP mae bron yn ychydig yn gliriach oherwydd pan rydych am swyddogaeth yn llythrennol yn dweud swyddogaeth, i chi roi enw iddo, ac yna rhestr wedi'i gwahanu gan atalnodau os oes unrhyw un o'i ddadleuon. Nid oes angen i ddweud ddi-rym neu unrhyw beth fel 'na, ac yna dychwelyd yr un fath, $ A * $ a * $ a. Yr hyn sydd hefyd ar goll? Sammy Nododd hyn yma. Ar frig y ffeil yn gyfan gwbl absennol yn PHP hefyd yn prototeip. Mae hyn hefyd yw drwy ddylunio. Ieithoedd a dehonglwyr fel PHP yn ddoethach nag erioed C yn crynoadyddion fel Clang. Dwyn i gof bod Clang, os na wnaethoch ddweud wrth ei bod ciwb yn bodoli, os na wnaethoch ddweud wrth ei bod printf yn bodoli fel ag prototeip neu gyda # yn cynnwys, yn dda, ei fod yn mynd i gweiddi arnoch chi a hyd yn oed lunio eich cod. PHP a ieithoedd modern mwy yn llawer callach pan ddaw i hyn. Byddant yn cymryd arnynt eu hunain i ddarllen drwy eich holl cod ac yna gweiddi ar chi dim ond os yw'n canfod unman ciwb. Nid oes ots os ciwb ar y gwaelod neu y brig neu hyd yn oed mewn rhai ffeil ar wahân. Ieithoedd PHP ac yn debyg yn awr yn smart ddigon i edrych ymlaen ar bopeth cyn dybied i chi fel petaech wedi gwneud camgymeriad. Ble mae hynny'n ein gadael ni? Gadewch i ni wneud un enghraifft olaf yma mewn amodau, ac os wyf yn agor i fyny rhybudd conditions2.php yn rhy gystrawen yma bron yr un fath. Im 'yn arfer readline yn hytrach na GetString, ond bod llinell yr un fath ag o'r blaen, "Hoffwn yn gyfanrif os gwelwch yn dda." Gennyf fi wedyn cyflwr os, bydd arall os, ac yna arall, ond swyddogaethol y rhaglen hon hefyd yn union yr hyn a wnaethom wythnos yn ôl, felly os byddaf yn rhedeg y peth hyn, php o conditions2, ac rwyf yn rhoi ei fod yn rhif, er enghraifft 23 - Dewisais rhif positif. Os byddaf yn rhoi -1 wyf yn codi nifer negyddol. Os byddaf yn rhoi 0 Myfi yn ddiau pigo 0. Felly sy'n gofalu am hyn oll? Wel, un o'r math hwyl yr ymarferion yma i mi o leiaf oedd mynd yn ôl a gweld pa mor gyflym y gallwn i weithredu pset 5, y pset gamsillafu. Dwyn i gof bod y ffeil o'r enw speller.c, ac roedd ffeil o'r enw dictionary.c. Beth i ddim yn wyf yn fath o dreulio ychydig funudau ac yr wyf trosi y cod C i PHP cod, ac ni fyddwn yn treulio llawer o amser ar sillafu oherwydd yn union fel yn pset 5 Nid ydych ddim wir angen i treulio llawer o amser ar sillafu ei hun oherwydd bod eich sylw oedd ar y geiriadur. Digon yw dweud, os ydych yn darllen drwy sillafu, y ffeil yma, mae'n 'n bert lawer sy'n cyfateb i'r cod C rydym yn rhoi i chi am pset 5. Rwyf wedi ychwanegu dim ond rhai $ mewn mannau. Rwyf wedi newid enwau swyddogaeth benodol os nad oeddent yn bodoli yn PHP. Mae un peth ychwanegol yma, preg_match, sydd yn ffordd ychydig yn ffansi o wneud rhywbeth, ond byddwn yn dod yn ôl i yn y pen draw. Ond yn fyr, sillafu bron yn union yr un fath, ac os edrychwch ar y gwaelod un yn y pen draw yr hyn y mae'n poeri allan yn hyn yma, geiriau a gamsillafwyd, geiriau yn y geiriadur, geiriau yn y testun. Mae pob hawl, felly beth sy'n ddiddorol yn awr yw y canlynol. Ar ben fy ffeil yr wyf yn ei gwneud yn ofynnol dictionary.php. Yn union fel y C # wedi cynnwys PHP mae iddo swyddogaeth arbennig a elwir yn ei gwneud yn ofynnol bod 'n bert lawer gwneud yr un peth, yn gofyn am ffeil o'r enw dictionary.php. Sut alla i fynd ati i weithredu pset 5? Gadewch i mi fynd yn ei flaen ac yn agor i fyny ffeil yma. Gadewch i mi gymryd cyfeirio fawr ddim yma. A gadewch i mi creu ffeil newydd a dechrau galw hyn dictionary.php. Gadewch imi ei rhoi mewn ffolder arall fel y gallwn wneud hyn yn byw. Ac yn awr byddaf yn chwyddo i mewn Rydw i'n mynd i ddechrau fy ffeil PHP gyda braced agored php gau braced. Ac yna i mewn yma roedd ychydig swyddogaethau fy mod angen i weithredu ar gyfer pset 5, felly gadewch i mi ddechrau gweithredu rhai o'r rheini, gwiriad swyddogaeth felly, a oedd i gymryd gair i mewn fel dadl. Byddwn yn gwneud hynny a dod yn ôl ato mewn munud. Roedd, llwyth swyddogaeth a gymerodd yn yr hyn fel dadl? Geiriadur, fel y ffeil fy mod mewn gwirionedd yn awyddus i lwytho. Roedd maint y swyddogaeth, nad oedd yn cymryd unrhyw ddadleuon ac nid oedd swyddogaeth-beth oedd y llall? Dadlwytho, nad oedd yn cymryd unrhyw ddadleuon chwaith. Mae'r rhain yn y 4 swyddogaethau y byddai angen i mi yn awr yn gweithredu yn PHP, a'r hyn yr wyf i'n mynd i wneud yw mynd ymlaen a gwneud hyn. Mae llawer ohonoch wedi defnyddio tabl hash yn pset 5, felly gadewch i mi fynd yn ei flaen ac yn creu tabl hash yn PHP. Done. Mae hynny'n rhoi i mi tabl hash. Wel, pam? Un, y newidyn gelwir $ tabl, dim ond i greu'r syniad o dabl hash. Mae'r cromfachau sgwâr, fodd bynnag, galw i gof, yn cynrychioli beth? Mae amrywiaeth, ond nid mewn rhesi PHP oes rhaid mynegeio'n rhifol. Gallant hefyd fod yn araeau cysylltiadol, sy'n golygu y gallwch gael allweddi mympwyol a gwerthoedd. Mae llawer yn hoffi yn pset 5, y rhai ohonoch a wnaeth gweithrediadau tabl hash chi osod yn ôl pob tebyg y gair ac yna mewnosod i mewn i gadwyn o restrau cysylltiedig, neu os ydych yn storio gwerth rywle gwir neu rywbeth i'r perwyl hwnnw. Byddwch yn cofio rhywsut y ffaith bod y gair yno. Am y tro, mae hynny'n mynd i fod yn fy tabl hash, ac felly, yn awr i fynd ati i weithredu'r swyddogaeth archwiliad Fi jyst angen i edrych y tu mewn y tabl hash i weld os yw gair yno. Yr hyn yr wyf i'n mynd i wneud yw fy mod i'n mynd i ddweud os- gadewch i ni ddweud ISSET, sydd yn swyddogaeth PHP sy'n llythrennol yn golygu dim ond yn y set allweddol, felly ISSET ($ tabl [$ gair], ac os felly dychwelyd yn wir. Dyna ni. Dyna pset 5 yn PHP. Wel, i fod yn deg, iawn. Arall dychwelyd ffug, felly nid yw'n yno. Beth sy'n wir yn mynd ymlaen yma? Wel, os bwrdd neu hash tabl yma yn fwy cyffredinol- yn arae cysylltiadol sy'n golygu y gallwch mynegai i mewn iddo gyda gair fel "gair," a rhaid i chi fynd yn ôl rhywfaint o werth. Rydym yn fath o gael un cam ar y blaen o ein hunain. Byddai'n fath o neis os ydym mewn gwirionedd yn llwytho y ffeil yn gyntaf, felly nid llwyth yn eithaf mor syml, ond gadewch i mi fynd yn ei flaen ac yn chwip i fyny  gweithrediad iawn cyflym o llwyth. Gadewch i mi fynd yn ei flaen ac yn dweud geiriau yn cael geiriadur ffeil. Mae'r swyddogaeth ffeil yn PHP yn agor ffeil ac yn dychwelyd i chi amrywiaeth o holl eiriau yn y ffeil, dim ond dwylo nhw i chi. Dyna oedd yn boen mawr hefyd, nid oedd hi? Nawr foreach, mae hyn yn ein Ffurfiant newydd, foreach ($ $ geiriau fel gair). Mae'r ddolen yn mynd i ddechrau ailadrodd dros y geiriau amrywiaeth ac yn rhoi i'r newidyn gair $ pob gair yn y ffeil o'r cyntaf i'r ail i'r trydydd i'r pedwerydd yr holl ffordd felly nid oes gennyf i wneud y nodiant blino [i] ac yn y blaen. A hyn yr wyf i'n syml yn mynd i'w wneud ar gyfer pob un o'r geiriau hyn yn cael ei storio yn fy tabl drwy mynegeio i mewn i dabl ac yna gwneud yn wir oherwydd i gofio bod gair yn fy ngeiriadur i gyd Fi 'n sylweddol yn rhaid i wneud yn fath o troi ychydig a dweud y gair hwn yn fy tabl hash yno, yn wir. Ac os nad yw yno, nid oes gennyf i yn benodol yn rhoi ffug, fel arall byddai'n rhaid i mi roi ffug ar gyfer yr holl eiriau posibl yn y bydysawd. Mae'n ddigonol i mi yn unig i osod gwerth mynegai i wir os gair mewn gwirionedd yn fy tabl hash. Nawr, rwy'n torri ychydig o gorneli yma y byddaf yn chwifio fy nwylo ar gyfer yn awr, ond erbyn hyn mae'r swyddogaeth llwyth yn cael ei wneud. I lwytho holl eiriau o'r ffeil i mewn i arae. I ailadrodd dros y array, ac ar gyfer pob gair yn y casgliad Wyf yn plwg i mewn i fy mwrdd hash gydag 1 llinell o god. Mae hyn yn hwyl. Rydych yn gwybod sut y gallwn weithredu faint nawr? Wel, maint bob amser yn eithaf hawdd, i fod yn deg. Yma, gallwn yn unig yn dychwelyd gyfrif y bwrdd. Dyna 'n bert hawdd hefyd, yn cyfrif y nifer o bethau yn y tabl. Dyna mewn gwirionedd math o nad oedd y mwyaf effeithlon. Mae'n debyg y dylwn gael faint amrywiol a elwir fel y gallwn ei wneud mewn amser cyson, ond mae hynny'n eithaf hawdd. O, ac yna dadlwytho, os ydym wir eisiau bod yn rhefrol yma gallwn ddweud bod sut yr ydych yn dadlwytho rhywbeth. 'Ch jyst yn gosod y newidyn cyfartal i amrywiaeth gwag, ac mae'n cael gwared ar bopeth oedd yno. Nid oes angen i chi ffonio am ddim. Unwaith eto, rwyf wedi dorri rhai corneli, ac ymddiheuraf am broblem a osodwyd aseinio 5 efallai yn C, ond os ydym yn awr yn mynd yn ei flaen ac yn rhedeg hyn, Rydw i'n mynd i mewn gwirionedd yn rhedeg y fersiwn a ysgrifennais o flaen llaw yn unig fel nad oeddwn wedi gwneud unrhyw gamgymeriadau cystrawennol o gwbl. Gadewch i mi fynd yn ei flaen ac yn rhedeg sillafu. Mae'r defnydd yr un fath. Dyma ffeil geiriadur a dim ond yn cynnwys y foo gair. Dyma ffeil testun a dim ond yn cynnwys foo bar. Gadewch i sillafu wirio hyn, felly sillafu, gan ddefnyddio y ffeil geiriadur ar y ffeil testun. Mae un gair wedi'u camsillafu, bar, a voila. Wedi'i wneud gyda pset 5. Gadewch i ni gymryd seibiant 5-munud yma, a byddwn yn dod yn ôl a mwy ar PHP. Mae pob hawl, yr ydym yn ôl. Gadewch i ni yn-casineb i mi am gyfnod. Gadewch i ni nawr mewn gwirionedd weld os nad oedd hyn yn gadarnhaol mewn gwirionedd yn gweithredu y peth hwn yn PHP. Roddwyd, roedd yn cymryd 45 eiliad i weithredu. Ond gadewch i ni fynd yn ei flaen yn awr ac yn rhedeg pethau. Gadewch i mi fynd yn ei flaen ac yn rhedeg fersiwn C o sillafu, a byddwn yn rhedeg ar un o'r ffeiliau mwyaf, sef y Brenin Iago Beibl. A bod yma yn cyd-gadewch i ni fynd i mewn i'n C folder, sillafu ar Brenin Iago y 5ed. Mae llawer o eiriau wedi'u camsillafu. Iawn, felly dyna yr allbwn mae'n debyg y byddwch yn cael hyd yn oed os yw'r gwaith yn ychydig yn wahanol, os ydych yn cael popeth yn gweithio'n gywir, ac felly amser yn gyfanswm gwirio sillafu Roedd y Brenin Iago Beibl 0.38 eiliad, felly 'n bert da gan ddefnyddio y gweithrediad hwnnw. Nawr, gadewch i mi fynd i mewn i'r fersiwn PHP yr ydym newydd ei ysgrifennu. Gadewch i mi redeg sillafu ar y Brenin James. Wps, anwybyddwch y gwall. Rwyf yn y cyfeiriadur anghywir. Sillafu ar Brenin Iago y 5ed. Gwneud bron. Iawn, bydd y sylwedydd craff yn sylweddoli bod yn fwy na 3 eiliad yno. Dyna'r gwir amser yn rhedeg. Mae'n troi allan bod yn cymryd amser i boeri llawer o destun y tu allan oherwydd clustogi materion, ond stori fer hir, oedd 3.15 eiliad o amser beiriant, CPU amser, erbyn yr hyn oedd funud yn ôl? Fel .3. Yr wyf yn golygu, ei fod yn drefn maint arafach, felly ble bod arafu chwerthinllyd yn dod o? Wel, fel sydd wedi bod yn wir gyda'r rhan fwyaf unrhyw benderfyniad cynllunio rydym wedi gwneud yn y dosbarth yn ystod y 9 wythnos diwethaf mae bron bob amser yn y tradeoff. Weithiau, dim ond rhwng gofod, weithiau rhwng gofod ac amser, gofod, amser ac ymdrech datblygu, ac yn wir yma, er bod rydym yn arbed llawer iawn o amser, efallai allai 10-20-30 awr o amser datblygu gweithredu'r gwiriwr sillafu drwy chwipio i fyny mewn dim ond 45 eiliad gyda'r iaith y pris yr ydym yn talu yw ei fod yn gorchymyn o faint arafach o ganlyniad, ac mae hyn yn gyffredinol wir am y rhan fwyaf o unrhyw iaith dehongli, PHP, Python, Ruby, Pearl neu eraill lle os ydych chi'n mynd i redeg drwy gyfieithydd ac wedi ei ddarllen eich cod fesul llinell, top i'r gwaelod, o'r chwith i'r dde, y middleman yn mynd i gymryd peth amser ei hun, a'r hyn yr oeddech yn teimlo yma yn y 3 eiliad yn hytrach na 0.3 eiliad yw'r ffaith bod y middleman sy'n gorfod llythrennol dehongli ein cod fesul llinell, a Duw yn gwahardd os byddwch chi'n tu mewn i ddolen gyda ffeil enfawr sy'n cynnwys cannoedd o filoedd o eiriau. Bod uwchben yn mynd i ychwanegu i fyny ac i ychwanegu i fyny ac i ychwanegu i fyny ac i ychwanegu i fyny. Am arf fel hyn mae'n debyg nad yw'r iaith gorau i'w ddefnyddio ar gyfer gweithredu gwirydd sillafu os uniongyrchedd o ddiddordeb i eich defnyddwyr ac i chi. Ond mae'r moethus sydd gennym mewn eiliad yw os ydych yn defnyddio iaith fel PHP neu lawer o ieithoedd dehongli yng nghyd-destun y We, o ran hynny, mae gennych y fantais bod y rhyngrwyd yn llawer arafach na'r rhan fwyaf o gyfrifiaduron. Mae gennych CPU GHz yn eich cyfrifiadur, 2 GHz, efallai hyd yn oed yn fwy y dyddiau hyn. Ond y gwir amdani yw ar y rhyngrwyd, mae swm uchel o latency lle ar gyfer porwr i siarad â gweinyddwr, er y gwelsom yr wythnos diwethaf, bod 'n bert gyflym, hanner millisecond neu hynny, hynny hefyd yn ychwanegu i fyny, ac os ydych yn llwytho i lawr pethau fel delwedd neu lun Facebook neu gael negeseuon gwib dros Facebook sgwrsio, Gchat neu bethau tebyg, pob un o'r adegau hyn rownd-daith rhwng y porwr a dechrau'r gweinydd i ychwanegu i fyny, sy'n gwneud eich dewis penodol o iaith mewn llawer o achosion nid bob un sy'n berthnasol, felly eich bod yn iawn defnyddio iaith ychydig yn arafach fel PHP neu Python neu Ruby ond y mae upsides mawr i chi a'ch cydweithwyr a'ch ffrindiau oherwydd gallwch weithredu pethau hynny, felly yn llawer cyflymach. Ac ar ben hynny, mae gennych risg llawer llai o ddiffygion diogelwch penodol. Does dim pwyntiau yn PHP. Does dim diffygion SEG y gallwch yn hawdd achosi yn yr un ffordd gallech yn C. Gyda C ydych yn super yn agos at y caledwedd. Gyda ieithoedd PHP ac yn debyg eich bod yn fath o lefel uwch, fel petai, gyda llawer o amddiffynfeydd rhyngoch chi a beth sy'n digwydd mewn gwirionedd ar y tu mewn i'r peiriant, ac mae'n dim ond tradeoff. Rydym wedi gotten at y pwynt o gael y mwy modern, ieithoedd lefel uchel fel PHP oherwydd y gwersi a ddysgwyd mewn ieithoedd fel PHP yn C. Ond os nad ydych yn deall beth sydd wedi bod mynd ymlaen o dan y cwfl i gyd y tro hwn nad ydych yn sicr yn gallu gwneud y penderfyniadau dylunio cywir, ac yn sicr pan ddaw'n fater o weithio mewn lle fel Facebook neu Google neu unrhyw un o'r lleoedd sydd yn gynyddol yn chwarae gyda setiau data mawr hyd yn oed os byddwch yn mynd yn ôl ac nid premed ac rydym yn gweithio gyda rhai MD ar rai ddata helaeth wedi eu cynnwys cleifion a meddygon ac yn y blaen defnyddio'r offer cywir yn hynod o gryf oherwydd fel arall gallai eich dadansoddiad o rai set ddata yn cymryd eiliad, neu efallai ei fod yn llythrennol yn cymryd oriau. Mae hyn yn un enghraifft yn unig, i beidio â rhwystro chi gydag ymdrech faint yn fwy yr oedd yn C, ond i'ch helpu i sylweddoli, pan fyddwch yn gweithredu rhywbeth yn C chi wir yn deall, neu mewn theori, mewn gwirionedd yn deall sut y dylai popeth yn neu fod yn gweithio, a bod gennych reolaeth bron yn llawn dros yr hyn sy'n mynd ymlaen o dan y cwfl, a gyda'r ieithoedd hyn ar lefel uwch rhaid i chi ildio mwy o reolaeth i bobl a ddyfeisiodd eu ac maent yn destun mwy i'w benderfyniadau dylunio na chi. Ond os ydym yn cymryd yn ganiataol bod y perfformiad Nid yw mor bwysig ar y We oherwydd y materion eraill, cyflymder rhwydwaith yn unig yn ychydig yn arafach na'r cyflymder CPU beth bynnag, fel y gallwn ddatrys o fforddio i ddefnyddio iaith ychydig yn arafach os yw'r upsides yn gallwn ddatblygu pethau 10 gwaith yn gyflymach neu hyd yn oed yn fwy. Gadewch i ni weld sut y gallwn ddechrau defnyddio hyn. Gadewch i mi fynd i mewn a folder ymhlith enghreifftiau heddiw a elwir yn frosh.ims, ac roedd hyn oedd mewn gwirionedd yn cymell bersonol gan y ffaith mai'r peth cyntaf Ysgrifennais ar gyfer y We mlynedd yn ôl ar ôl cymryd CS50 a CS51 Roedd gwefan ar gyfer y rhaglen IMS Frosh, chwaraeon rhyngfurol freshman, oedd ar y pryd roedd hyn yn ddigon o flynyddoedd yn ôl bod ar y pryd nid oedd unrhyw wefan ar gyfer y rhaglen, hyd yn oed er nad oedd y We, ac yn hytrach roedd proctor yn Wigglesworth lle os ydych chi eisiau i gofrestru ar gyfer pêl-foli pêl-droed neu neu beth bynnag y byddech yn llenwi darn o bapur. Byddech wedyn yn cerdded ar draws yr iard. Yna, byddech yn curo ar eu drws a llithren yn eu drws neu â llaw i'r proctor darn o bapur, a'ch enw arni, p'un a ydych am fod yn gapten tîm, pa chwaraeon rydych am ei wneud, a pha dorm oeddech ynddi Roedd yn fath o ffordd hen ysgol o wneud pethau, ac roedd hyn yn brif cyfle i awtomeiddio llawer o'r broses hon. 'Ch jyst yn mynd at y wefan. Chi deipio rhywbeth i mewn Byddwch yn cael cadarnhad e-bost, a ffyniant, rydych chi wedi gorffen. Hwn oedd y peth cyntaf wnes i, er bod hynny mewn iaith o'r enw Pearl, ond mae'n gymharol hawdd gwneud hynny mewn PHP, ac mae hyn yn fath o gynrychiolydd o'r problemau y gallwch chi ddechrau datrys pryd y gallwch fynegi eich hun Nid programmatically ac nid yn gorfod dibynnu ar bethau fel safleoedd Google neu Excel neu offer sy'n cael eu rhoi i chi. Chi guys awr yn cael y gallu i wneud pethau fel hyn. Mae hwn yn fersiwn hyll super o ffurf, ond gadewch i ni dim ond ei ddefnyddio ar gyfer cychwyn y sgwrs lle mae hyn yn yn fras yr hyn y mae'r ffurflen yn edrych fel flynyddoedd yn ôl i ni i alluogi pobl ar y We i gofrestru ar gyfer Frosh IMS. Rydym yn gofyn am enw, checkbox am p'un a ydynt am fod yn gapten, gwryw neu fenyw, ac yna beth dorm oeddent yn, ac yna byddent yn cyflwyno'r ffurflen hon. Gadewch i ni edrych yn gyntaf o dan y cwfl yn y HTML sy'n cynrychioli dudalen we hon. Gadewch i mi fynd i mewn i froshims0, ac fel o'r neilltu, ar gyfer pset 7 Yr wyf i'n cymryd yn ganiataol y cyfeirlyfrau a'r ffolderi fy mod i'n rhoi pethau i mewn Byddwn yn cerdded i chi trwy'r union lle mae pethau wedi mynd yn y peiriant, sy'n gorchmynion mod yn rhaid i chi redeg, felly peidiwch â phoeni am yr holl manylion dwp syncing i mewn o'r yma gael-fynd. Mae pob hawl, dyma froshims0.php. Gadewch i mi sgroliwch i lawr, a beth rhyfedd yn y fan, hon yn ffeil PHP, ond yr hyn sydd y tu mewn ohono, yn amlwg? Mae'n llawer gyfan o HTML, ac yn wir, PHP gwreiddiau mewn gwirionedd ar gyfer bod yn iaith y We-ganolog. Mae hyn o bryd yn ôl, yn ei ddefnyddio i weithredu'r enghraifft cwrw, yr amodau er enghraifft, yr enghraifft helo, ac mae hynny'n iawn. Gallwch ddefnyddio PHP fel iaith sgriptio lle mae sgript yn wirioneddol yn unig y gyfundrefn enwau a roddir i raglen gyflym ac yn fudr neu rywbeth eich bod yn ysgrifennu mewn sgriptio neu yn fwy cyffredinol yn iaith dehongli. PHP yn super defnyddiol ar gyfer hynny oherwydd eich bod wedi gweld pa mor gyflym y cymharol y gallwn chwip i fyny rhaglenni yn PHP. Ond fe'i cynlluniwyd iawn i gael ei ddefnyddio ar gyfer y We, a gynlluniwyd ar gyfer y We yn yr ystyr fod hysbysiad i fyny yma ar ben y ffeil Wyf yn dechrau gyda