[Muzika] SPEAKER 1: Kjo është CS50 dhe ky është fundi i javës së shtatë. Sot është ndoshta ku ne me të vërtetë të mësuar gjuhë. Ne kemi prezantuar në disa viteve të javë HTML dhe CSS, asnjëra prej të cilave janë gjuhë programimi. Dhe me të vërtetë, edhe pse ne e bëmë jo shikoni në pothuajse të gjitha tags që vjen me HTML dhe gati të gjitha i pronave që CSS vjen me, kjo është lloj i tij për HTML dhe CSS. Ne do të vetëm në përgjithësi fillojnë duke supozuar se ju kuptojnë idetë e përgjithshme i tags, dhe atributet, dhe faqet e duke u dërguar nga klienti në server. Sepse sot ne fillojmë të shikojmë në një tjetër gjuhë programimi, PHP. Ne jemi duke shkuar për të bërë këtë super të shpejtë. Ne nuk jemi duke shkuar për të mësuar se PHP në vetvete, ashtu si ne nuk aspirojnë për të mësuar ju C, në vetvete, por në vend të programimit. Dhe me të vërtetë, një nga më të Qëllimet për këtë kurs nuk është për të mësuar ju C, ose HTML apo CSS, ose PHP, ose ndonjë numër tjetër i fjalë të lëvizje apo akronimet, por shkenca kompjuterike dhe se si të programit rrënjësisht. Dhe me të vërtetë, sot ne fillojmë për të marrë këto rrota trajnimit jashtë të gjitha më tej duke fluturuar përmes një gjuha quajtur PHP, si më poshtë. Këtu është ajo që kjo gjuhë duket si. Ajo rezulton se nuk ka nevojë për një funksion kryesor në një program të shkruar në një gjuhë që quhet PHP. Kështu që tashmë tingëllon pak të thjeshtë se C, me të cilën ne jemi të njohur. Ajo rezulton se në qoftë se ju dua të deklarojë një ndryshore, ju bëni atë pothuajse identike në C. Por ka të qartë një ndryshim këtu kur unë deklaroj një varg, ose ndoshta dy dallime. Çfarë duket ndryshe? AUDIENCA: The shenja e dollarit. SPEAKER 1: Po, nuk ka dollar nënshkruajë, të cilat ne kurrë nuk kam parë më parë. Dhe çfarë mungon? Po? Audienca: [padëgjueshme] SPEAKER 1: Po, nuk ka asnjë lloj të të dhënave. Pra, rezulton se PHP është ajo që ne thërrasë një gjuhë shtypur lirshëm, ku C është shtypur me forcë. Shtypur lirshëm thjesht do të thotë se ka lloje të ndryshme të të dhënave, ka strings, dhe Ints, dhe gjithandej. Por shifrat kompjuter që jashtë. Ju programues njeriut nuk duhet të kuptoj atë. Pra, të gjithë ju duhet të bëni të deklarojë një ndryshore është shenja e dollarit, emri i juaj ndryshueshme, dhe pastaj, për shembull, quote mbyll thonjëzat, Hello World. E pra kjo është ajo që një gjendja duket si në PHP. Ndonjë ndryshim? Jo. Pra, ajo rezulton këto janë identike. Dhe ju mund të keni më pak degë apo më shumë degë, Por kthen sintaksë saktësisht të njëjtë. Shprehje Boolean mund të urdhërohet së bashku. Shprehje Boolean mund të anded së bashku. Ju ende keni çelsin. Edhe në qoftë se ju nuk e keni përdorur këto, këto nuk ekzistojnë në C dhe ata janë funksionalisht ekuivalente në PHP. Dhe në fakt, në PHP ata janë pak më të fuqishme. Në C, ju vetëm mund të krahasoni sigurt Llojet e të dhënave si ints dhe karaktere, ndërsa në PHP ju në fakt mund të krahasoni strings plotë të fluturojë pa pasur nevojë të shqetësohen për pointers dhe si. Kështu që këtu është një për lak. Kjo është vetëm pseudokod Kodi, nëse ju do. Por strukturalisht është identike me C. Këtu ka një lak, ndërsa, pseudokod therefore-- identike me C. Këtu ka një të bërë, ndërsa loop-- identike. Dhe kështu që nuk është lloj i ky model këtu ku ka një sintaktik disa të tjera Karakteristika ne jemi me të vërtetë do të shohim. Në fakt, këtu është një e bukur Mënyra në PHP ku, në qoftë se ju doni të iterate mbi një grup, dhe ju nuk duan të kërcejnë përmes hoops mendore dhe sintaksore e të pasurit int i barabartë me 0, unë më pak se n, unë plus plus-- që është vetëm një shumë e sintaksës bezdisshëm. Ju mund të thonë se një pak më shumë fluidly për çdo numrat si numër, ku në këtë rast Numrat shenja e dollarit, Unë jam duke supozuar, është si një grup i quajtur numra. Dhe atëherë unë jam duke supozuar numër, njëjës, do të jetë një variabël. Dhe çfarë do të bëjë PHP për mua si unë iterate mbi këtë lak është, në çdo përsëritje, ajo do update numër të ndryshueshëm të të jetë elementi ith në numër, shumës. Pra, vetëm ajo merret me të gjitha këto për mua. Asnjë kllapa katrore, asnjë shenja e dollarit, nuk ka gjysmë-colons. Është vetëm një pak më të thjeshtë. E pra, në qoftë se ju doni një grup, ajo rezulton nga ju mund të bëjë diçka mjaft të ngjashme me C. Sintaksa është pak më ndryshe. Por këtu është një grup i quajtur dollar nënshkruar numra. Dhe unë e përdorin, në PHP, katror kllapa, ajo rezulton. Dhe ne jemi duke shkuar për të parë këto përsëri në JavaScript-- një tjetër gjuhë. Unë vetëm përdorni katrore simbol kllapa që të ketë një listë të ndara me presje e integers, në këtë rast. Por që më jep një koleksion. Por edhe më të fuqishme në PHP, ne gjithashtu kemi se çfarë janë në përgjithësi quajtur vargjeve associative. Dhe një shumë e gjuhëve kanë këto si. Gjë në lidhje me C vargjeve është se indekseve për një grup, gjë që ju përdorim në kllapa katrore nëpërmjet të cilës ju hyni elemente, duhet të jetë ajo? Audienca: [padëgjueshme] SPEAKER 1: Ata duhet të jenë numra ose integers, veçanërisht nga zero në dorë. E pra, në PHP, dhe, ajo kthehet jashtë, në gjuhë të tjera, ju mund të filloni të keni Indekset që nuk janë numerike. Por ata janë në fakt fjalë ose frazat, kështu që në vend se përpiqet për të kujtuar se ku diçka është, ose ruhet në një i ndryshueshme, ju në fakt mund të përdorni një fjalë dhe të thonë that-- ju mund të them një fjalë si kjo. Pra quote shenja e dollarit është emri i një ndryshore këtu. Kjo është sintaksa disi i shokuar kjo është shoqëruar me dy vlera kryesore çifte për këtë variabël. Në mënyrë të veçantë, kjo është duke i dhënë mua një grup që është i gjatësisë 2. Por indekset nuk janë të 0 dhe 1. Indekset janë quote mbyll thonjëzat simbol dhe japin kuotën e çmimeve mbyll thonjëzat. Dhe vlerat e këtyre indekseve, respektivisht, është FB për Facebook dhe 79,53 $, kur unë të zgjasë kontrolluar një çmim për këtë. Cfare do te thote ajo? E pra, kjo do të thotë se në vend të kodit të shkruarit si kjo, ku kam përdorur për të bërë diçka si dollar sign-- ose më mirë, në C Unë nuk do të ketë edhe një shenjë dollar. Unë do të bëjë diçka si kuotat dhe pastaj Unë do të bëj kllapa unë të marrë në disa në mënyrë arbitrare numerikisht indeksuar vlerë. Duke filluar nga sot në PHP, nëse ju doni të merrni në disa vlera, ne kemi më shumë lloj shprehurit semantik. Vetëm një mënyrë e sofistikuar për të thënë që ne mund vetëm thirrje gjëra atë që ata janë. Dhe në qoftë se ju doni të merrni në diçka simbol, tani ju fjalë për fjalë të bëni të japin kuotën simbol siç janë quajtur ato në kllapa katrore në vend të një numër i thjeshtë. Pra, kjo është një lehtësi e bukur. Dhe kjo është lloj i saj tani për tani. Ka bunches e Karakteristika të tjera në PHP. Dhe me të vërtetë, PHP vjen me lavaman kuzhine proverbial. Dhjetra, qindra e funksioneve vijnë me PHP-- kaq shumë më shumë se erdhi me C. Dhe kjo nuk është për qëllim të trullos por më tepër të ndihmojë ti e kupton se ne nuk më duhet të shkruani kodin kjo është lloj i poshtë këtu konceptualisht. Tani ne mund të fillojë vetëm duke përfituar e shumë më të avancuar karakteristika që gjuhë si PHP keni. Pra, ne nuk duhet të shqetësohen për lëvizin gjërat rreth në kujtesë. Ne nuk duhet të shqetësohen për malloc dhe të gjitha këto nivel më të ulët, Detajet e fuqishme që ju do të luftoj me, në qoftë se nuk luftojnë me, pset5, por ju mund të fillojnë të së shpejti të marrë për të dhënë. Në fakt, le të shkruajë një super program i thjeshtë në PHP, si më poshtë. Unë jam duke shkuar për të shkuar kokë në CS50 IDE këtu, dhe atë që unë jam duke shkuar për të bërë është të krijojë një skedar të ri, që shumë thjesht do të quhet përshëndetje dot PHP. Pra, në vend të c dot, kjo është do të quhet dot PHP. Dhe pastaj në këtë dosje, Unë mund të filloni të shkruani. Por kjo rezulton se një gjë që unë duhet të di është se çdo skedar PHP në përgjithësi, ka nevojë për për të filluar me një sintaksë të veçantë. Ngjashëm në frymë me HTML, por përsëri, PHP është një gjuhë programimi, nuk një gjuhë markup. Pra, çdo skedar, dhe kjo është lloj i trashë kërkuar unë do të pranoj. Kllapa hapur, pikëpyetje, PHP. Dhe kjo është vetëm Mënyra gjuhë për të thënë: hej, kompjuter këtu vjen një kod i shkruar në një gjuhë që quhet PHP. Dhe pastaj në fund të dosjes suaj, ju bëni lloj lloj të kundërtën. Ju nuk shkruani PHP përsëri, ju vetëm bëjnë pikëpyetje, kllapa kënd. Dhe pastaj çdo gjë që ju vënë brenda e këtyre dy tags, kështu që të flasin, do të jetë, ose duhet të jetë, kodi PHP. Pra, le të bëjë diçka super të thjeshtë. Unë jam duke shkuar për të shkuar përpara dhe të bëjë të shtypura def, Hello World, backslash n, për të shpëtuar. Dhe tani në prompt time, unë jam duke shkuar për të bëjë, të bëjë hello-- jo, unë jam duke shkuar për të bërë, dot çaj përshëndetje. Jo, dot plagë, hm. Pra, diçka është ndryshe. Dhe në të vërtetë, kjo është një dallim kyç në mes PHP dhe gjuhë si C. C ishte një i ashtuquajtur gjuhë hartuar. Çfarë do të thoshte për C të hartuar? Cili ishte implikimi? Po. Audienca: shkroi atë në kodin e makinës kështu që mund të drejtohet nga kompjuteri. SPEAKER 1: Pikërisht. Ne duhet që së pari të kthyer atë në ashtuquajturi kodi makinë, zero dhe ato, para se ai në fakt do të jetë i ekzekutueshëm dhe kuptohet nga kompjuteri. Nga Intel brenda. Nga CPU brenda e kompjuterit. PHP, nga ana tjetër, është ajo që quhet një gjuhë interpretuar, e cila do të thotë që ju nuk e përpilojnë atë në zero dhe ato, kodin e makinës, ju në vend që të lënë atë si kodi burim. Dhe ju në vend që të kalojë atë si input në një program, një përkthyes se dikush tjetër ka shkruar vjet më parë se e kupton atë rresht pas rreshti, karakter për karakter. Pra, me fjalë të tjera, njerëzit atje shkroi një program që do të duken në linjë tuaj kod pas rreshti, dhe të kuptoj se çfarë kompjuteri duhet të bëjë, pa konvertimin e saj direkt në zero dhe ato. Pra, nëse ajo sheh një për lak, kjo e ashtuquajtura përkthyes do të jetë si, të gjithë të drejtë, unë duhet të të bëjë diçka përsëri dhe përsëri dhe përsëri. Cfare duhet te bej? Më lejoni të shikoni në rreshtin tjetër. Më lejoni të shikoni në rreshtin tjetër. Dhe kjo me të vërtetë e interpreton atë rresht pas rreshti. Pra, për të ekzekutuar atë, unë nuk e përdorin make. Unë nuk e përdorin dot plagë në këtë rast. Unë në vend të bëj PHP, i cili është emri i një programi, alias Një përkthyes, kjo është para-instaluar në CS50 IDE, dhe tani unë duhet të kalojë një command line argument, i cili është mjaft e thjesht emri i të fotografi që unë dua për të interpretuar. Ose më shumë rastësisht, që unë dua të drejtuar. Dhe në qoftë se unë hit Enter, nuk kemi atë. Përshendetje Botë. Tani del se unë përdorur def shtypura qëllimisht për të na urë nga C në PHP. Shumica e programuesit PHP, si ju do të shihni, mos shqetësojë edhe duke përdorur def shtypura. Ata vetëm përdorin një funksion të quajtur shtypura, e cila C nuk kanë. Dhe kështu që nëse unë përsëritje atë tani, ai në fakt sillet funksionalisht e njëjtë. Unë nuk mund të përdorin për qind s dhe unë për qind e kështu me radhë, por ka mënyra të tjera në PHP e bëjnë këtë. Por kjo është vetëm për të thonë se sintaksore, përveç disa gjëra të çuditshme up lartë, dhe disa karaktere pazakontë poshtë në fund, konceptet tani e programimit në këtë gjuhë tjetër do të jetë saktësisht e njëjtë. Në fakt, le ta bëjmë një shembull tjetër. Kështu që unë jam duke shkuar për të shkuar përpara dhe të mbyllë këtë fotografi. Më lejoni të krijojë një tjetër që Unë do të thërrasë kushte 1 dot PHP. Pra jo zero, sepse çfarë kam bërë u kam shikuar prapa disa javë më parë, kemi pasur një skedar të quajtur Kushtet e 1 dot C. Dhe çfarë Unë kam u konvertuar atë në time kokë, dhe këtu në letër, dhe së shpejti në sigurisht e website, rresht pas rreshti në PHP. Pra, në versionin C, ne e bëmë diçka si string s merr merrni string. Pra, kjo është pak më ndryshe për të bërë këtë në PHP. Në vend të kësaj, unë jam vetëm duke shkuar për të bërë, ose më mirë, unë mund të ketë bërë int n merr merrni int, në këtë shembull më parë. Pra, në vend të kësaj, unë jam duke shkuar për të bërë n merr lexuar vijë, unë do të doja një numër të plotë, ju lutem. Pra, kjo është vetëm shpejtë ime. Dhe kështu kjo rezulton, dhe Unë vetëm do të dinë këtë nga ka lexuar apo parë funksionin para, lexoni linjat e funksionit në PHP merr një argument që është një shpejtë për të njeriut, dhe qëllimin e saj në jetë është për të lexuar një vijë të tekstit që ai ose ajo lloje në. Dhe atëherë ajo ruan se Teksti në n ndryshueshme. Dhe tani unë mund të dëshironi të bëni diçka si kam bërë javë më parë, në javën si një klasë. Nëse n eshte me e madhe se zero, atëherë, unë jam duke shkuar për të marrë hua atë sintaksë ne vetëm e pa, def shtypura, ju kap një numër pozitiv, n backslash. Tjetër nëse n është e barabartë barabartë me zero, unë jam do të shkojnë përpara dhe të thonë, def shtypura, ju kap zero backslash n. Tjetër, rasti këtu duhet natyrisht të jetë, def shtypura, ju kap një numër negativ. Dhe ne me siguri mund të zbatojë logjika e kësaj gjëje në një bandë e ndryshme mënyra, por çështja këtu është se sintaksore, mezi çdo gjë është e re. Është vetëm shenja e dollarit dhe një funksion të ri dhe të vijë të lexoni. Por në thelb, çfarë ka të re tani është që unë jam duke interpretuar këtë. Unë jam duke kaluar atë si input në një tjetër program. Pra, nëse unë dua të drejtuar këtë, në qoftë se Unë nuk e ka bërë gabime, Unë jam duke shkuar për të drejtuar PHP, i Kushtet e 1 dot PHP, Enter, Unë jam duke shkuar për të shkruani në numrin e 50, dhe le të supozojmë tani për tani ajo punon. Sepse logjika është njëjtë sende si një javë. Të gjithë të drejtë, kështu që kjo është goxha underwhelming, e drejtë? Ne mund të bëjmë këtë në ndonjë Numri i gjuhëve. Le të bëjmë mënyrë diçka më të fuqishme. Le Problemi përfundojë vendosur pesë. Kështu që unë jam duke shkuar për të shkuar përpara dhe të bëjë këtë. Unë jam duke shkuar për të krijuar një skedar quajtur fjalor dot PHP, dhe të prirur si ju mund të jetë të ngjitem poshtë shumë shënime, shënimet do të ndihmojë vetëm ju nëse ju jeni i lejuar për zbatimin e problemeve të vendosur pesë në PHP. Por ne do të shohim se sa shpejt tani ne mund të zbatojë të njëjtin grup të problemeve. Pra, në fjalorin dot PHP, unë jam duke shkuar për të marrë se tashmë ka një skedar në botë të quajtur speller. Dhe në të vërtetë, kam bërë këtë më parë, dhe ne nuk do të ecin nëpër këtë linjë pas rreshti, por në qoftë se ju jeni kurioz më vonë dhe me të vërtetë duan të përfundojë mendjen tuaj rreth dallimet në mes të C dhe PHP, fjalë për fjalë krahasoni këtë fotografi, Speller, nga kodi sotme burim se ne do të postoj më vonë sot, kundër p grup dot pesë Speller c se ne ju jap, dhe kjo është pothuajse e njëjtë line nga linjë. Ka disa shenja më dollar. Një çift funksionet janë pak më ndryshe. Por kjo është një mënyrë e mirë e lloj e parë se si ju përktheni një gjuhë në tjetrën. Dhe kjo është linja pothuajse identike për linjë. Por unë jam duke shkuar për të supozojmë se kjo ekziston, dhe atë që unë jam duke shkuar për të bërë këtu është të përpiqen për të hedhur tuaj mendjen nga reimplementing tërësia e problemit të vendosur pesë rrugën më shpejt se ju keni qenë duke bërë deri tani. Kështu për shembull, unë jam duke shkuar për të parë të deklarojë një ndryshore globale të quajtur madhësia, dhe e vendosi atë barabartë me zero. Tani që nuk është shumë kursime. Shanset janë që ju implementohen Madhësia e shumë e shumë të njëjtën gjë, ose aluzion aluzion, do sonte ose nesër, vetëm duke përdorur një ndryshore globale të quajtur madhësia, dhe vendosur atë barabartë me zero. Kjo nuk është një veçanërisht i spoiler mahnitshme. Pra, çfarë ishin të dhënat tuaja strukturat e zgjedhje, ata që kanë hodh në krahun dhe të lexoni spekulim, strukturat çfarë dhënave kanë shumica prej jush kanë qenë duke përdorur? Një tabelë hash ose të provoni, ndoshta disa variante tyre. Pra, duke zbatuar një tabelë hash të paktën, është lloj i një shumë prej linjave të kodit, e drejtë? Dhe jo të gjithë prej tyre mund të jenë funksional në këtë pikë në javë, por kjo është në rregull. Sepse në PHP, nëse unë duan një tabelë hash, bërë. E drejtë? Kështu që variabël që unë e kam deklaruar vetëm është padyshim quajtur dollar tavolinë shenjë, për hyrje para. Por unë me të vërtetë vetëm dua, në në fund të ditës, një koleksion. Por jo një indeksuar numerikisht array, sepse kjo është si dy javë sende, kur kemi biseduar rreth vargjeve. Unë dua një tabelë hash. Por një tabelë hash është me të vërtetë vetëm një mënyrë konkrete për të thënë: ju doni një grup associative. Ju dëshironi që të jetë në gjendje për të Çelësat shok me vlera. Çelësat me vlera. Çfarë është një fjalor, me të vërtetë? E pra kjo është një bandë e tërë e çelësave. Fjalë të tilla si mollë, dardhë, dhe banane, dhe të gjitha këto fjalë anglisht që ne t'ju dorëzojnë. Dhe vlerat që ju jeni në mënyrë efektive futur në fjalorin tuaj janë ose të vërteta, apo mungesa, të rreme. Me fjalë të tjera ju jeni futur një bandë e tërë e çifte kyçe me vlerë, mollë, e vërtetë, dardhë, e vërtetë, banane, e vërtetë. Kështu që kur ju të rifitoj ose shikoni up këto të dhëna në tryezën tuaj hash me funksionin tuaj kontrolloni, ju jeni ose duke u kthyer një përgjigje, Po, kam gjetur atë në kompleksin e mia hash tryezë, apo jo, kjo nuk është atje, kështu që ju kthimit të rreme. Pra, për të bërë këtë, të gjitha unë duhet është të dhënave Struktura si unë e propozuar më parë. Unë vetëm duhet të jenë në gjendje që të lidhen fjalë si, të japin kuotën e mbyll thonjëzat, simbol, me një vlerë si, e vërtetë. Pra, ka tryezën time hash. Le të vërtetë e përdorin atë. Pra, ka disa funksione Unë kam nevojë për të zbatuar. Unë jam duke shkuar për të shkuar përpara dhe kafshoj off një funksion të quajtur madhësi. Ajo nuk merr argumente. Unë nuk duhet të shqetësojë me fjala, i pavlefshëm, në PHP. Unë jam thjesht duke shkuar për madhësinë kthehen. Dhe si një mënjanë, PHP ka ky detaj minorly bezdisshëm, ku nëse diçka është globale, ju duhet të tregoni funksionin në të cilën ju jeni duke përdorur ajo, hej, kjo është një variabël globale. Pra, marrëzi të vogla, por ju duhet ta bëjë atë megjithatë. Pra, çka në lidhje me ngarkesën? Unë jam duke shkuar për të zbatuar një funksion i quajtur ngarkesë që merr në emër të një fjalor, ashtu si në problemin vendosur pesë. Dhe para se unë të vazhdojë, vëreni se unë nuk kam qenë shtypja mjaft të njëjtat gjëra. Çfarë është padyshim e ndryshme në lidhje me PHP si ju të deklarojë një funksion kundrejt C? Po. Audienca: [padëgjueshme] SPEAKER 1: Asnjë lloj kthimi. Dhe me të vërtetë, kjo është rasti, PHP për aq sa është e shtypur lirshëm, është gjithashtu një pak i spërkatur në këtë kuptim. Ju nuk specifikoni si programues çfarë ky funksion kthen. Ju do të duhet të vërtetë të shikoni në kodin e të kuptoj se nga. Ose lexoni komentet apo dokumentacionin. Pra pluses dhe minuset e këto lloje të vendimeve. Por unë duhet të them fjala kyçe, funksioni. Kur ne mësojmë JavaScript në disa javë ne jemi duke shkuar për të parë të njëjtën gjë përsëri, por është e njëjta ide. Emri i funksionit, argumenti i saj ose argumente, ose mungesa e tij, dhe tani këtu është zbatimi. Kështu që unë jam duke shkuar për të prerë disa qoshet vetëm të jenë dramatike për vetëm një moment. Por unë jam duke shkuar për të shkuar përpara dhe të thonë se kjo. Kjo është se si unë mund të ngarkesës një skedar në një rrjet. Nuk është një funksion në PHP quajtur skedar. Ju dorë atë emrin e një file. Kjo ju duart prapa një grup, brenda e cila është çdo vijë nga file. Nga zero, një, për deri për n minus 1 linjave. Kjo është ajo, e drejtë? Nuk ka f lexuar. Nuk ka f get s. Nuk ka asnjë për qind s. Nuk ka dhimbje koke. Nuk ka feof. Të gjitha që stuff me të cilat ju keni qenë mundje ndoshta, me p vendosur katër dhe pesë, shkon larg. Kështu që unë vetëm lexuar ato linja në fotografi, dhe pastaj ju e dini se çfarë? Nëse unë dua të iterate mbi këto fjalë, Unë mund të bëj, për çdo linja si linjë. Mos harroni se kjo ishte lloj i një zgjuar Mënyra e iterating mbi një grup, indeksi nga indeksi, dhe në çdo thirrje ripërsëritje linja e tanishme, dollar linjë shenjë. Dhe këtu unë jam duke shkuar për të shkuar dhe thonë tavolinë, kllapa, line, merr vërtetë. Me fjalë të tjera, kjo është se si unë futur në tryezën time Hash në PHP. Unë them tavolinë shenjën e dollarit, e cila është array ime asociativ që ishte bosh në përputhje të kodit deri lart. Unë atëherë indeksi në të jo, duke përdorur një numër, por fjalë për fjalë duke përdorur fjalen që më intereson. Ndoshta kjo është mollë ose dardhë ose banane apo çfarëdo, por në mënyrë të veçantë unë jam indeksimin në atë si unë e propozuar më herët. Unë marr emrin e tim array associative, dhe pastaj unë përdorni quote mbyll thonjëzat në kllapa katrore me një varg, në vend të një numri aktual. Dhe kështu kjo është ajo. Funksioni ngarkesës është bërë. Pasi atë iterates lak, unë kam vënë çdo gjë në tryezë hash. Tani mohim i vogël, ka një disa gjëra unë nuk nevojë për të rregulluar. Dhe versioni unë do të postoj në internet do të ketë të gjitha nuancat, por kjo është kryesisht vetëm do të jetë një gabim kontrolluar dhe disa tweaks të vogla. Por kjo është me të vërtetë thelbi i saj. Nëse unë tani dua të zbatojë funksioni i quajtur kontrolloni, e cila pret një fjalë si argument të saj, Si mund të shkoj për të bërë atë? E pra, unë jam thjesht do të thotë, në qoftë se brenda tryezën time, në fjalën e lokacionit, në qoftë se është vendosur. Pra, nëse ka is-- në fakt, ju e dini se çfarë? Unë jam duke shkuar për të bërë atë në pak e pseudokod. Por ideja është e njëjtë. Nëse kjo është e barabartë e vërtetë, kthimi i vërtetë. Në rregull. Else-- ju mund të lloj të shihni se ku kjo going-- të kthimit të rreme. Done. Kontrolloni është bërë. Shumë e bukur, e drejtë? Dhe kështu çfarë është kjo me të vërtetë duke marrë në? Dhe kjo shumë, unë prerë disa qoshet. Shikoni në versionin në internet për të gjitha nuanca të lehta. Por kjo është thelbi i saj. Indeksi në tuaj array associative, alias Tabelë hash, të shohim nëse ka një vlerë të atje, në qoftë se ajo është e vërtetë, dhe nëse po, kthim i vërtetë. Pra, ne kemi whittled poshtë të gjithë kompleksitetin. Pra, lloj e mendjes defekt, e drejtë? Unë nuk do të shqetësojë përfunduar atë me shkarkoj, sepse në fact-- oh, ju e dini se çfarë? Po, le të përfundojë atë me shkarkoj. Shkarkoj në një tabelë hash mund të duket si funksion shkarkoj, kthehen. OK kështu që është shkarkoj. Sepse nuk ka asgjë të shkarkoj, e drejtë? Nuk ka malloc. Unë nuk shprehimisht pyesni sistem operativ për asgjë. Unë vetëm filluar përdorimin e variablave. Dhe kështu që edhe kjo është një manifestim i Tiparet e gjuhëve të nivelit të lartë. Pra, përsëri, shumica e këtij termi ne kemi qenë që kanë të bëjnë këtu poshtë me C. nivel super të ulët. Ju mund të shihni kujtesën e kompjuterit. Ju mund të prekni asgjë të duan në RAM kompjuterit tuaj, për mirë apo për keq. Deri këtu, ne jemi duke shkuar të heqin dorë këtë pushtet. Por Perëndia im, të shohim se si shumë më pak kod kam shkruar. Në fakt, në qoftë se unë nuk po flisnim dhe duke folur mbi typing time, ne do të ishte bërë me ky shembull pesë minuta më parë. Pra, çfarë është çmimi duke u paguar? E pra, le të marrin një sy. Le të marrin një vështrim. Unë jam duke shkuar për të shkuar përpara dhe të drejtuar CS50. Më lejoni së pari të shkoni në Shembujt e sotme ku Unë kam dosjen tekste si më parë. Unë jam duke shkuar për të drejtuar zgjidhje që ajo vjen me problem i ngritur pesë quajtur Speller, e cila është në llogarinë CS50 e. Dhe unë jam duke shkuar për të drejtuar atë në diçka i madh si King James Bible, vetëm kështu që ne me të vërtetë vënë Zgjidhjet e stafit në provë. Tani nganjëherë në internet është një pak më ngadalë, pak më të shpejtë, mund të marrë një kohë të lëvizni. Por ajo mori një total prej .56 sekonda për të spell check Mbretit Xhejms Bibla përdorur zgjidhje stafit. Pra, shumë e mirë. Juaji mund të jetë shumë më i ngadalshëm, dhe kjo është krejtësisht në rregull. Por kjo është e saktë këtu. Pra, kjo është zgjidhja stafi. Nëse unë shkoj në dhe pastruar versionin e PHP. Dhe unë jam duke shkuar për të bërë një pak si tregojnë pjekje gjë. Ne jemi duke shkuar për të marrë kodin e kam shkruar më herët, kështu që është krejtësisht e saktë. Sepse kodi i kam shkruar nuk do të jetë krejtësisht e saktë vetëm tani. Por në qoftë se unë të drejtuar versionin e PHP, çfarë unë duhet të heqin dorë sot? Mori me pesë minuta për të zbatuar p vendosur pesë, unë pretendojnë. Çfarë çmimi kam paguar? Po. Audienca: Speed. SPEAKER 1: Speed. Cfare do te thuash? Audienca: Ajo do të marrë më të gjatë. SPEAKER 1: Në rregull. Le të shohim. Ajo do të marrë më të gjatë, jo për të shkruar, por për të drejtuar atë. Po. Pra, le të provoni këtë. Kështu që këtu unë jam duke shkuar për të shkuar përpara dhe të bëjë PHP e Speller, dhe për shkak se dosja e quajtur Speller. Kështu që unë nuk jam që drejton fjalor, kujtojnë, Unë jam drejtimin e programit të quajtur Speller. Unë jam duke shkuar për të kaluar në të njëjtën file, King James i pesti. Është fluturon me. Kjo mund të jetë vetëm shpejtësia e internetit, kështu që nuk lexojnë shumë në atë. Por kjo do të ndjehen më të sigurt. 1.26 sekonda. Tani që është ende shumë mallkuar shpejtë, e drejtë? Dhe arsyeja e vetme që ndjehet si më shumë si tre, ose katër, ose pesë sekonda, kjo është vetëm për shkak se në internet ishte i ngadalshëm. Ora kompjuteri kaluar ishte 1.26 sekonda, kundrejt unë mendoj 0.56. Pra, më shumë se dy herë më i ngadalshëm. Tani që është ende goxha i mallkuar të shpejtë, por kjo është një manifestim e, me të vërtetë, se çmimi i saktë. Sepse ne jemi duke interpretuar në vijën e kodit nga ana e linjës, dhe se programi PHP është leximin tim Kodi i lartë e deri në fund, majta në të djathtë, ajo ka të bëjë më shumë të menduarit. Ajo ka për të lloj të kthyer ajo brenda në vetvete në makinë korrespondues Kodi të fluturojnë, kështu që të flasin, edhe pse mekanikë janë pak të ndryshme. Në vend të vetëm të ushqyerit të Intel CPU zero para dhe ato se ajo e kupton vetvetiu. Pra absolutisht, duart poshtë, ne kemi paguar një çmim. Dhe kodi i shkruar në një gjuhë të si PHP ka tendencë të jetë më i ngadalshëm. Por Perëndia im. Deri tani, kur unë spell check tim file, kam shpenzuar një shtesë 0.7 apo më shumë sekonda vs 20 orë për të zbatuar një shpejtë spell checker, e drejtë? Kjo është lloj i një tregti off. Dhe në qoftë se ju jeni vetëm duke filluar p vendosur pesë, nuk mund të jetë 20 orë. Mund të jetë shumë më pak se kaq. Por kjo është një tregti off, për të vërtetë. Dhe nëse ju jeni duke kodin në të vërtetë e madhe grupe të të dhënave, ose në hardware edhe më të vjetër, ato llojet e dallimeve me siguri mund të shtoni deri. Ndonjë pyetje deri më tani? Po. Audienca: [padëgjueshme] SPEAKER 1: Na vjen keq, mund të ju thoni atë një herë më shumë? Audienca: [padëgjueshme] SPEAKER 1: Ju jeni duke i dhënë kohën. E pra, kështu vërtet. Ju jeni duke kursyer kohë nga nuk ka për të hartuar atë, nëse kjo është ajo që ju jeni duke kërkuar. Dhe me të vërtetë, në CS50, shumica e programeve, edhe pse ata mund të marrë një kohë për të shkruar, ata janë relativisht të shkurtër. Pak duzinë, disa qindra rreshta të kodit, dhe kështu që ata hartojnë shumë shpejt. Por kur ju filloni shkrimin e programeve të mëdha, si në qoftë se ju jeni të Microsoft ose ju jeni Google dhe shkrimin e programeve të vërtetë të mëdha në C, ose C ++, ose në mënyrë të ngjashme hartuar gjuhë, mund të marrë shumë sekonda, apo edhe minuta ose më shumë për të përpilojnë miliona rreshta të kodit. Dhe atje, që Dallimi do të shtoni deri. Dhe në fakt, pasi ne Tranzicioni sot, të njëjtën ditë sot, në programimin e web duke përdorur PHP, ju jeni duke shkuar për të gjetur atë vetëm aq shumë më të pëlqyeshëm për të shkruar kodin kur ju nuk keni për të bërë këto budalla Hapat si ndryshim në terminalin tuaj dritare, tip make hello, ri drejtuar atë, ringarkoni dritaren. Vetëm kaq shumë budalla Hapat që mekanike vetëm të marrë në rrugën e bërë interesante, puna fun. Dhe me të vërtetë ne e hedhin atë larg me PHP. Dhe ne mund të bashkëveprojnë me atë më shpejt. Po. Audienca: [padëgjueshme] SPEAKER 1: Sigurisht. A mund ta sqaroj se çfarë do të thotë që të interpretohet? Kur ju të përpilojnë një gjuhë si C, ajo shkon poshtë siç thamë në makinë Kodi, zero dhe ato. Dhe Intel ka vendosur vjet më parë se modele të caktuara të zero dhe ato përfaqësojnë shtimin, apo zbritjes, apo të shtypura, ose operacione të tjera themelore. Në botën e një gjuhë interpretuar si PHP, ose JavaScript, ose Python, ose Ruby, ose rrush të të tjerët, në vend dikush ka shkruar një interpreter-- në këtë rast, është quajtur gjithashtu PHP, identike me emri i language-- që në thelb ka një lak të madh në atë se iterates mbi të gjithë nga linjat e kodit që unë ushqejmë atë si input, si përshëndetje dot PHP, apo fjalor dot PHP. Dhe pastaj ju mund të mendoni të tyre të mëdha loop si të paturit e një shumë të kushteve. Dhe këto kushte them, në qoftë se njerëzore ka shkruar fjalen per, fillojnë të bëjnë tij ose të saj Kodi përsëri dhe përsëri. Ose në qoftë se njeriut ka shkruar linjë të kodit, në qoftë se, vetëm ekzekutuar tyre linjë tjetër kusht. Pra, kjo është me të vërtetë si interpretimi në një kuptim njerëzor, linjë pas rreshti, dhe që vetëm merr kohë. Ajo merr lart. Dhe kështu që është një price-- mirë question-- ne paguajmë. Pra, le të bëjë një tjetër demo kjo është pak më dramatik. Nuk është, unë do të them, një ballpark këtë në një probabilitet 90% e dështuar tmerrshëm, por ju do të jetë i habitur me 10% probabilitet. Pra, çdo vit ne përpiqemi për të bërë këtë, ku ne të përpiqet për të shkruar një program që shkon përmes Problemi vendosur zero, për të cilën ju keni dorëzuara numrat e telefonit tuaj dhe një Shumë informacione të tjera demografike, dhe ne programmatically ju dërgoj një mesazh me tekst. Dhe pastaj telefon gjithëve fillon beeping ose vibruese, dhe kjo është vetëm e mahnitshme, sepse mirë, të shikojmë se çfarë mund të bëjë kompjuterat. Kjo rrallë punon si duhet me sa duket, në pjesën më të madhe sepse unë zakonisht të merrni në listën e zezë nga Gmail apo ndonjë shërbim tjetër për të vërtetë duke u përpjekur për të bërë këtë në shkallë. Por Funny gjë është shumë, pasi ne nuk kanë të gjithë sot këtu, Fakti fun hera e fundit që ne provuar këtë dy vjet më parë, Unë mendoj se kam shkruar një program që u ul në një iterating loop mbi të gjithë nxënësit në klasë, dhe secili prej tyre një mesazh me tekst, dhe ai tha diçka si, pse nuk jeni në leksion? Dashuria, CS50 bot. Ju nuk keni ide se sa shfajësues dhe e-mail lloj të dhimbshme Unë e kam marrë në përgjigje nga n minus 100 njerëz të cilët nuk kanë qenë këtu atë ditë. Dhe, edhe funnier, story-- më të turpshme ju e dini, le të vënë atë atje. Kjo është tashmë në video disa vjet mbrapa. Pra, ju së shpejti do të më shihni shkruaj një për lak, ku është shumë e lehtë për të shkruar një bug në se për lak, të tilla që koha e parë përmes lak, ju të dërgoni një mesazh me tekst. Herën e dytë nëpër lak së Parë duhet të kemi dërguar një mesazh shumë tekst, dhe pastaj një teksti më shumë mesazh, dhe një më shumë. Por kjo rezulton në qoftë se ju bëni një typo kur programimit, ndonjëherë ju mund të shkruani programe që dërgojnë një mesazh me tekst, atëherë dy mesazhet me tekst, pastaj tre mesazhe me tekst për të gjithë i cili ka marrë tashmë një mesazh teksti. Dhe siç e dini, duke bërë diçka, plus diçka, plus diçka, plus diçka, është O i madh i shumë e mesazheve me tekst, apo n katror, ose në 0,10 $ një mesazh me tekst, $ 20,000. Fatmirësisht unë goditi Kontrollit-C përpara se ndodhur, por unë kam borxh të paktën një e paraardhësit tuaj $ 20 për 200 disa mesazhe të çuditshme tekst që, jo vetëm që shkoi në telefonin e tij, por gjithashtu ajo ishte si një telefon të vjetër rrokullisje kështu që ajo pëlqen shtyrë jashtë tij kujtesës çdo teksti tjetër personale Mesazhi që ai kishte marrë në fakt. Pra, ne kemi një qëllim sot, për të mos bërë atë. Ndoshta kthehet në mënyrë aeroplan. Në rregull. Pra, le të shkojë në një Programi këtu callled-- që unë do të thërrasë tekstin dot PHP. Dhe më parë, unë kam marrë dy fotografi këtu. Unë bëra një skedar për stafin e vetëm, që e mori të gjitha info të stafit, të gjithë emrat nga faqja e internetit të kursit. Dhe pastaj për tani unë vetëm vënë disa numra të rreme 555-1212. Pra, këto nuk do të vërtetë të shkojnë kudo. Por vini re brenda e kësaj skede CSV, të cilat kemi biseduar për një kohë të shkurtër më parë në kontekstin e skedarit IO. Çfarë është një skedar CSV? Ndarë me presje variablave. Dhe kjo është lloj i si një shumë bazës së të dhënave lehtë, nëse ju do. Ka lloj lloj katër kolona në këtë dosje, dhe atje i dehur, Por presje thelb paraqesin shtyllat në dosje. Kolona e parë është TF ose emri i AK-së. Shtylla e dytë është emri i tyre i fundit. Kolona e tretë është numri i tyre telefonit. Dhe kolona e katërt me sa duket is-- Kolona e katërt është me sa duket ajo? OK, kështu që është bartës i tyre. Pra, Verizon, Sprint ose, apo jo atë. Dhe në qoftë se unë misspoke më parë, CSV. Ndarë me presje vlerave është CSV këtu. Pra, çfarë mund të bëj me këtë? E pra kjo është vetëm një fotografi e madhe teksti, dhe kjo është lloj i gjatë, apo jo? Ashtu si kjo do të të jetë lloj i bezdisshëm. Dhe kjo rezulton, megjithatë, se në qoftë se unë dëshironi të dërgoni një mesazh me tekst në, le të thonë Alex këtu. Më lejoni të shkoj në shfletuesin tim dhe të dalë mode ekran të plotë vetëm kështu unë mund të toggle mbrapa dhe me radhë. Ajo rezulton, le të shohim, nëse unë shkoj në këtu, dhe hyni në Gmail, të gjithë të drejtë. A nuk shohin në këtë pjesë. Vetëm të shkoj të shoh. sigurisht LiveStream mund ende të shohim se çfarë unë jam duke bërë. Në rregull. Kështu që këtu është vetëm Gmail me Llogaria John Harvardit. Pra, nëse unë dua të dërgoj një mesazh me tekst për Alex, Unë mund të sigurisht kompozojnë një mesazh. Dhe kjo rezulton, dhe unë kam testuar atë me Alex para këtu, kështu që ju mund të append një domain të caktuar emrin në numrat e telefonit të njerëzve, sepse ekziston në botë gjëra quajtur SMS në email porta. E cila është një mënyrë e sofistikuar për të thënë të gjithë prej nesh që kanë telefona mobil që kanë numrat e telefonit, natyrisht, atje ndoshta është për kompaninë tuaj, një prapashtesë të caktuar si në Vtext.com për mesazhin Verizon tekst dot com, që ju mund të append në tuaj Numri i telefonit vet personal, dhe pastaj ju apo miqtë, apo prindërit tuaj mund të ju tekstin në atë adresë të veçantë. Dhe Verizon ka një server, një e-mail server, që pas marrjes së këtij email, shikon pjesën numerike dhe pastaj përdor çfarëdo industri të veçantë magji ata duhet të vërtetë të dërgoni atë mbi Valët to your Cell veçantë telefon. Tani kjo është e bukur, sepse unë nuk bëj të vërtetë e di se si për të dërguar një mesazh shkrimor ose të shkruani kodin ende për telefonin tim celular, dhe ju mund të bëjë pikërisht atë për një projekt përfundimtar, por tani për tani të gjithë Kam është laptop tim këtu. Kështu që unë dua të iterate mbi atë CSV file, line, pas rreshti, pas rreshti, nga linjë, kap secili prej numrave të telefonit e stafit, dhe bartës të tyre dhe programatically, lidh, që është, lidhni telefonin numër me emrin e duhur domain dhe pastaj dërgoni një email. Pra, kjo është një shumë e hapa. Dhe fat të mirë duke bërë që në C. Kjo është një makth i një situate për të hapur një skedar, për ta lexuar line, pas rreshti, pas rreshti, si ti janë duke parë, ose mund të shohim së shpejti me problemin e ngritur pesë, në qoftë se nuk Problemi vendosur katër, dhe pastaj për dinamike lidh dy vargjet bashkë, sepse në C, për të marrë dy vargjet dhe të kombinuar ato, Çfarë bëni ju minimalisht duhet të bëni më shumë gjasa? Ju duhet për të deklaruar më shumë memorie, e drejtë? Dhe pyes, malloc, mund të kem më shumë memorie? Kështu që unë mund të vënë gjysmën e kësaj këtu, gjysma e kësaj këtu. Kjo është vetëm kaq shumë hapa. Dhe deri në atë moment ju keni humbur Interesi në demo budallaqe vogël ku ju bëni telefonit bip gjithëve. Le të bëjmë këtë lloj të PHP stil, ku ne vetëm të fillojë përdorimin e më shumë të atij lavaman kuzhine. Dhe idetë janë krejtësisht të njëjta, por ne nuk duhet të shqetësohen shumë shumë për atë nivel të ulët. Pra, le të shohim se si unë mund të shkojë për të bërë këtë. Dhe vetëm kështu që unë nuk e bëj përsëris gabimet e kaluara, Unë kam shkruar disa shënime për veten time këtu. Dhe le të shohim nëse unë mund të na eci përmes disa nga hapat themelore; dhe pastaj për hir kohe e ne do të ndoshta prerë disa qoshet në fund. Unë jam duke shkuar për të shkuar përpara dhe të bëjë hapur kllapa PHP për të filluar këtë fotografi. Dhe unë jam duke shkuar për të shkuar përpara dhe të bëjë këtë. Paraqesë trajtuar, si ju do të së shpejti të shohim, në të vërtetë e quan një funksion të quajtur f hapur. Dhe mos harroni kjo hap një dosje. Dhe të japin kuotën, mbyll thonjëzat, r do të thotë se çfarë, përsëri? Vetëm të hapur atë për të lexuar. Tani në p caktuar për ju e bëri këtë. Dhe për të trajtuar mund të jetë çdo gjë, fu, bar, bas, ndonjë emër ndryshueshme. Por në përgjithësi një kompjuter shkencëtar do të thërrasë një file të hapur, duke ju dhënë një fotografi të trajtojë, diçka për të mbajtur mbi mënyrë që të flasin. Unë jam vetëm duke shkuar për të bërë disa kontrolluar gabim. Pra, nëse të trajtojë është i rremë, ashtu si në C, unë jam duke shkuar për të bërë diçka si, nuk mund të hapë dosjen, backslash n. Dhe atëherë unë jam vetëm duke shkuar për të shkuar përpara dhe dalje. Dhe kjo rezulton, në PHP, Unë nuk jam në brendësi të një funksioni. Nuk ka Funksioni kryesor këtu. Kështu që unë nuk do të kthehen, në vetvete. I dalë. E cila është në thelb e njëjta gjë. Dhe unë jam daljes me një y ndoshta. Një thjesht do të thotë një gabim të disa lloj. Kjo është jo-zero, kështu që është një gabim. Të gjithë të drejtë, kështu që në qoftë se unë jam këtu poshtë tani në programin tim kam hapur dosjen. Unë jam duke shkuar për të shkuar përpara dhe të deklarojë një grup i quajtur adresat, dhe në C unë do të duhet të dini madhësia e array paraprakisht, e drejtë? Ose unë do të duhet të deklarojnë këtë është një tregues, dhe pastaj të përdorin malloc. Dhe pastaj çdo herë që unë lexoj përmes një rresht në dosje, Unë do të duhet të malloc më shumë memorie, malloc më shumë memorie. Kjo është një dhimbje në qafë. Dhe fatmirësisht, PHP, dhe Ruby, dhe Python, dhe JavaScript, ata do të rritet vargjeve tuaja për ju automatikisht. Nuk ka malloc më shumë. Jo më shumë menaxhimin e kujtesës. I kompjuterëve kujdeset për këtë. Por çmimi që ju paguani. Kjo është pak më ngadalë. Dhe për një program si ky ne nuk jemi duke shkuar në njoftim. Ne jemi duke shkuar për të dërguar 100 mesazhe me tekst. Për shembull nuk do të ndjehen atë. Me të vërtetë vetëm fillon të rëndësi gjuhën tuaj të zgjedhur kur të dhënave tuaja ose programet tuaja merrni të vërtetë, të vërtetë të konsiderueshme, siç do të jetë rasti më shumë me web stuff tonë bazuar. Por tani për tani, le të ecur përpara. Ndërsa kjo rezulton se ka një funksion në C quajtur f merrni CSV. Skedar CSV merrni, që merr një paraqesë trajtuar si argument të saj, dhe kjo vazhdon pastaj, rresht, nga rresht, me radhë, për të lexuar në një rresht. Kështu që vetëm lexon një linjë i tekstit nga file. Por ajo që është e bukur për këtë funksion, ai nuk ka vetëm të më dorëzojë një vijë të tekstit. Ajo duket për ato presje, dhe parses vijën. Dhe të kuptoj të vijë do të thotë për të ndarë ajo në vlerat e caktuara në këtë kontekst. Me fjalë të tjera, shenja e dollarit rresht është një variabël që është do të më jepni një bandë e indekseve. Kjo do të jetë Kolona e parë në CSV time. Kjo do të jetë e dyta kolona, ​​kjo do të jetë i treti, dhe kjo do të jetë i katërti. Sepse kujtoj, dhe Excel jo bashkëpunojnë hera e fundit që ne e bëmë këtë, por në qoftë se unë të shkarkoni stafi dot CSV. Uh, jo riemërtoj. Nëse unë shkarko stafit dot CSV, dhe provoni hapja e tij, Unë tashmë e kam registered-- Oh unë nuk ka rinovuar Excel që nga hera e fundit. Ju do të shihni se në stafit dot CSV, unë kam katër shtylla. Kështu që kur kam lexuar në Rreshtin e parë për Abby këtu, dollar rresht shenjë 0 është Abby, rresht shenja e dollarit nuk është Lyons, rresht shenja e dollarit dy është numri i saj, dhe pastaj zgarë telefonit të saj. Pra, kjo është e gjitha. Dhe kjo është e bukur, sepse unë nuk kanë për tani kuptoj se ku të gjitha këto presje vërtetë janë. Kështu që unë jam duke shkuar për të shkuar përpara dhe bëni këtë, duke qenë se përkufizimi, Unë jam duke shkuar për të thënë se emri i saj është në kllapa rresht zero, siç kishte premtuar. Dhe unë jam duke shkuar për grab-- dhe në fakt, ju e dini se çfarë? Unë nuk jam duke shkuar për t'u shqetësuar rreth emri i saj, në këtë rast. Unë jam duke shkuar për të mbajtur atë të thjeshtë. Unë jam duke shkuar për të bërë numrin e saj është në rresht grupim dy, unë mendoj. Dhe zgarë saj ishte në ku? Row tre, një mbi. Pra, asgjë të re atje. Është vetëm zero indeksimit në një rrjet. Dhe tani, unë jam duke shkuar për të bërë në vijim. Nëse transportuesi barabartë barabartë me AT & T-- Unë jam vetëm do të ketë një loop-- Unë dua të krijoj një email Adresa e që duket si kjo. Ajo do të jetë 617-555-1212 në, çfarë është ajo, text.ATT.net, është ajo që unë dua të bëj. Pra, si mund ta bëni këtë? Unë do të bëjë të mëposhtme. Fjalën e saj do të jetë numri i saj, dhe tani, më lejoni të shkoj përpara dhe të bëjë këtë. Kjo është një sintaksë shokuar. Unë mund të bëjë për qind s mashtrim, por unë mund të vërtetë të vetëm të bëjë këtë. Pra, kjo është një gjë e PHP, por le të shqyrtojmë se çfarë unë jam duke bërë. Dollarë nënshkruajë adresën në e majta, vetëm një variabël. Më jepni një ndryshore. Unë nuk duhet të specifikojë llojin. PHP do të kuptoj atë. Në anën e djathtë, çfarë është lloji i të dhënave e atë gjë të tërë në anën e djathtë? Duket si një varg, sepse nuk ka të dyfishtë citon në të majtë tani dhe shumë e drejtë. Tani ka disa sintaksë shokuar ri këtu. Ka formatimin e teksteve kaçurrel, dhe numri shenja e dollarit. Por të marrë një mend se çfarë është ajo sintaksë ndoshta thënë PHP për të bërë për mua? Po. Vetëm futur vlerën atje. Kështu që nuk ka për qind s. Ne mund të përdorim të shtypura f, ose s shtypura f apo diçka si ajo, por PHP dhe shumë Gjuhët e nivelit më të lartë, ju jeni do të shihni se ju mund të bëjë të njëjtën gjë funksionalisht, ndoshta Gjashtë mënyra të ndryshme. Dhe kështu ajo fillon të bëhet një çështje e dizajnit apo stil. Pra, kjo është vetëm një mënyrë fshehtë kërkim për të thënë, më jepni një adresë e-mail, por plug-in e numrit në në mes të këtyre formatimin e teksteve kaçurrel. Dhe formatimin e teksteve kaçurrel nuk do të përfundojnë në adresën e fundit. Tani ne mund të kaloni mbi disa nga këto rreshta për hir kohe e. Pra, nëse një bartës barabartë barabartë verHorizon-- Uh, Verizon-- Unë dua të bëj diçka shumë të ngjashme, ku adresën e merr, të japin kuotën, mbyll thonjëzat, numër në text.ATT.net. Dhe pastaj unë mund të bëjë të njëjtin lloj gjë për pjesën tjetër të transportuesit. Por unë do të bëj vetëm dot, dot, dot tani për tani. Dhe tani le të supozojmë se Unë dua të shtoj rrjet, shtytje. Unë dua të shtoj me grup, i quajtur adresat. Kjo adresë, kjo është se si ju shtoni diçka për një grup në PHP. Ju nuk keni nevojë të bëni malloc. Ju nuk keni për të resize array. Ju vetëm të thonë se array, shtytje. Çfarë doni të push-- çfarë array nuk ju duan të shtyjnë diçka mbi? Adresat. Çfarë doni të shtyjë mbi adresat? Adresa. Dhe në fakt, në qoftë se ju me të vërtetë duan të jenë të zgjuar, disa sheqer sintaktik për këtë, kështu që të flasin, që vetëm do të thotë si mund ta bëni këtë në mënyra prettier, do të jetë për të bërë këtë. Që gjithashtu ka efektin e rritjes adresat array nga një madhësi, dhe pastaj pllum kjo shtesë adresë e-mail në të. Po. Audienca: [padëgjueshme] SPEAKER 1: Një typo mbi tjetër if-- oh, zgarë. Eshte ne rregull. Ajo gjithashtu nuk do të donte dështimin tim për zbatuar një pjesë të këtij programi me vone. Por ju falënderoj për kapjen. Një bug më shumë. Faleminderit. Ne duam që kjo të jetë Vtext.com. Po. Në rregull. Pra, ku e bën këtë na lënë? Ne kemi shkruar kodin për të hapur dosjen. Ne kemi një lak të iterate mbi rreshtat në dosjen. Ne kemi kodin që shton tim grup, një në një kohë, në mënyrë korrekte formatuar adresë e-mail. Kështu që të gjithë që me të vërtetë mbetet është që të dërgoni një email për secilin nga këta njerëz. Kështu që unë kam shkuar përpara dhe readied veten si më poshtë. Ajo që unë jam duke shkuar për të bërë këtu is-- dhe le të të shkojnë përpara dhe kaloni në disa kodin aktual, që duket si kjo. Kështu që këtu është para-pjekur Versioni kam shkruar më herët. Dhe vini re kam mbaruar zbatimin Sprint. Kam mbaruar zbatimin e T-Mobile. Kam mbaruar zbatimin Virgin Mobile. Dhe unë do të kërkoj falje paraprakisht. Ka disa transportuesit që disa studentë në klasë kanë që unë nuk u mërzit numėruar në nëse gjendja këtu. Pra, jo të gjitha tekstet do të shkojnë jashtë. Por le të shohim se çfarë tjetër duhet të bëj. I mbyllur dosjen, vetëm si në p vendosur katër. Dhe kjo është e sintaksë e re. Dhe ne do të shohim pak bit për këtë me kalimin e kohës, sidomos me p vendosur shtatë dhe tetë. Por kjo është sintaksë për krijimin e një lloj i veçantë i strukturës. Ajo rezulton se ka një bibliotekë që vjen me PHP, quajtur postues PHP. Qëllimi i tij në jetë është që të programuar dërgoni email. Kjo është kodi dikush tjetër shkruante se bën më të lehtë për ne për të dërguar email, kështu që ne nuk duhet të mbajnë duke shkuar mbrapa dhe me radhë në Gmail, dhe pasting në adresat e njerëzve email. Ka një bandë e tërë e linjave këtu që sinqerisht, unë vetëm lloj i kopjuar dhe ngjit nga dokumentacioni. Dhe në fakt, në qoftë se ju jeni kurioz, kam lënë të gjitha i URL e dokumentacionit në kodin që ne do të postoj më vonë. Dhe vini re se në mesin gjërat që unë jam duke bërë po, unë jam i thënë këtë bibliotekë, përdorin server Gmail-it, e drejtë? SMTP kemi biseduar shkurtimisht për kur ne ishin në Yale për të qenë me postë të thjeshtë protokoll transferimi. Kjo është protokoll që serverat e përdorura për të dërguar një email, dhe that's-- Gmail ka një nga ata. Një port, ky është numri TCP port. Kjo është në rregull në qoftë se ju nuk kanë parë më parë 587. Vetëm e di se nga dokumentacioni. Këtu është emri im. Unë jam duke shkuar për të përdorur bot CF50. Dhe në një moment, unë jam vetëm duke shkuar për të shkruani fjalëkalimin aktual bot s. Dhe pastaj poshtë këtu, vini re çfarë mbetet. I vendosur tim nga adresë të Bot në CS50.net. Unë mendoj se unë nuk do të pendoheni dërguar një mesazh me tekst për të 800 njerëzit që thotë, të humbasë ju, bot CS50 dashuri, ndoshta për ata që nuk mund të bëjë atë sot. Dhe pastaj në linjë 76, çfarë të bëj? Ky lloj i duket si C. Pra, për i është e barabartë me 0, n equals-- tani numërimin është e re. Ajo rezulton se në qoftë se ju doni të merrni numri i gjërave në një grup, ju nuk duhet të mbani mend atë më. Ju vetëm mund të kërkoni një funksion i quajtur akuzë, dhe ajo do të ju them se sa shumë adresat janë në këtë grup. Dhe atëherë unë jam duke shkuar për të shtuar adresën e-mail. Dhe unë e di këtë nga duke përdorur dokumentacionin. Ka një funksion adresë add. Dhe tani vini re atje është një pjesë e sintaksës. Ne e kemi parë këtë më parë në C. ngjashme në shpirt. Ju mund të mendoj për shenjën e dollarit postës si një variabël, që ajo është. Por kjo është një struct brenda të cilat nuk janë vetëm pronat, Variablat nëse ju do. Por kjo rezulton se në PHP, që është një programimit të orientuar objekt gjuha, si Java qoftë se ju mori APCs. Dollar shenjë postë, në qoftë se ju doni to-- ajo gjithashtu ka funksione në brendësi të saj, ose metoda. Pra, kjo do të thotë se postues veçantë PHP bibliotekë, në qoftë se unë kam marrë një ndryshore të tij, në qoftë se unë dua të thirrur një funksion që vjen me atë bibliotekë, për qëllime të sotme, vetëm e di se ju përdorni arrow simbol. Nuk ka dot simbol. Është vetëm shigjeta. Por kjo nuk është një akrep. Është huazuar vetëm nga sintaksë C. Kështu e quajnë shtoni adresën brenda Objekti Kjo bibliotekë ose të ndryshueshme. Në rregull. Kjo është vija magjike. Kjo është se si unë po dërgoj një email. Kjo është ekuivalente e hapjes Gmail, shtypni atë, dhe goditur dërgojnë. Por ajo do të në vend të dërguar një email në këtë adresë, me këtë trup, nga bot CS50. Dhe tani linjë kyç. Kjo linjë ka munguar në 2011 si kur unë mendoj se kam kaluar provuar këtë. Kjo vijë atje, sigurisht, hap adresat. Pra logjikisht, në qoftë se unë mos qartë adresë pas çdo përsëritje, i pari email ose mesazh tekst shkon në Alice, e dyta shkon për Alice dhe Bob, i treti shkon në Alice dhe Bob dhe Charlie, prandaj gabim shumë të shtrenjta Unë bëra atë vit. Pra, le të shohim. A ka ndonjë pyetje para se të ju dërgojnë të gjithë një tekst Mesazhi me 10 për qind probabilitet? Ndonje pyetje? Në rregull. Le të shkoj në këtu dhe ndryshim fjalëkalimin për çfarë duhet të punojë, ka të ngjarë të merrni listën e zezë nga Gmail. Pra, ata nuk mund të shkojnë të gjithë jashtë, pasi ata ndoshta mos na pëlqen dërguar 800 email në një lak për të gjitha përnjëherë. Meqë kjo nuk është Sjellja e njeriut në veçanti. Oh, unë jam duke shkuar për të ndryshuar një gjë tjetër. Deri në krye, unë jam duke shkuar për sent-- ndryshoni skedarin për studentët dot CSV. Dhe unë nuk do të hapur këtë, por kjo është një identike skedar CSV me jo 100 stafin, por 800 i studentëve, të vetëm nga Harvardi, sepse Yale ka pushimin tetor këtë javë. Dhe kjo duket si lloj i një gjë hov për të bërë në tekst të gjithë ata se pse ata nuk janë në klasë në pushime. Eshte ne rregull. Vetëm studentët e Harvardit sot brenda këtë dosje. Dhe tani le të kthehemi në dritaren time terminal. Unë jam natyrë e nervoz. OK kështu që tani unë jam duke shkuar për të shkuar në Lista, dhe teksti PHP dot PHP. Si në lidhje me një vullnetar trim? Kështu që unë nuk dua që kjo mbi mua. OK, eja lart. Si e ke emrin? MAYA: Maya. SPEAKER 1: Maya. Eja lart, Maya. Në rregull. Le të shohim nëse kjo funksionon. Kam vënë adresën tuaj të emailit në file-- vet numrin e telefonit tim në dosje, kështu që shpresojmë se unë do të merrni një të tillë si. Gëzohem që u njohëm. MAYA: Po kështu. SPEAKER 1: Pra, të gjithë ju duhet të bëni është hit Enter për të dërguar 800 mesazhe me tekst, në qoftë se unë nuk e vidhos deri. Bukur. Mund të marrë një kohë, statistikisht, deri sa të kemi një email address-- një mesazh tekst që është në dhomën e drejtë tani. Le të zgjatem dhe të shohim. Audienca: [fishkëllimë] SPEAKER 1: Oh, po. Audienca: Oh, Gotcha. SPEAKER 1: Për sythe are-- këtë nuk është i ngadalshëm për shkak të PHP. Kjo është i ngadalshëm për shkak Gmail është throttling ne dhe jo na lënë të dërgojë më shumë se si një email për sekondë. Çdo gjë? Kjo ishte një gjë e vështirë për mua për të provuar në shtëpi me vetëm mua dhe një telefon tim, kështu. A është kjo shpresë nga bot? Po? Nuk ka? Thonë po. Nuk ka? Kjo është nga një mik? Awkward. NE RREGULL. Goxha i sigurt se është duke punuar edhe pse. Uh oh. Ata black-- Oh, prit një minutë. Oh, ju e dini se çfarë? Nje moment ju lutem. Vetëm Maya dhe I-- Mia, ishte ajo? MAYA: Maya. SPEAKER 1: Maya, do të e di se çfarë kam bërë gabim këtu. Oh, prisni një minutë. Unë mendoj se unë vetëm dërguar 100 mesazhe me tekst në 555-1212. Stand by. Unë nuk mund të fitojë ndonjë vit. NE RREGULL. Maya? Fix që në postin e prodhimit. Dammit! Pas nga adresa. OK, sehir. Më vjen keq. Është e dhimbshme çdo vit. OK, një moment. Kjo eshte e mire. Unë jam duke shkuar në vend për të bërë këtë. Adresa e shtypura. OK, sehir. Adresat shtypura, kllapa i. Po, më pëlqen kjo. Dollar sign-- OK unë do të shpjegojë atë që unë jam bërë në një moment, pasi unë e kam drejtuar këtë. Çdo vit. OK, këtu ne do të shkojmë. Unë kam just-- dhe unë nuk dua për të treguar numrin e telefonit të gjithëve, por Maya mund të konfirmoj me një dremitje të kokës, që ajo e sheh të gjithë e numrin e telefonit në klasë që unë jam duke shkuar për të kopje në një program të quajtur Gmail. Dhe në qoftë se në Gmail, çfarë duam të themi? Me mungon. Love-- kjo nuk është prej meje. Unë nuk e kanë goditur edhe të dërguar ende. Pra, le të shkojnë përpara dhe të bëjë këtë, në qoftë se unë mund të zoom në. NE RREGULL. Kështu që unë jam duke përdorur një program të quajtur Gmail tani. Nëse Maya, ju dëshironi të klikoni butonin Send, ne do të simulojnë se çka Kodi duhet të ketë bërë. Çdo gjë? [BEEPS] Audienca: Po. SPEAKER 1: Po? Shpëtimi? Audienca: Po. SPEAKER 1: Miss you. Dhe unë jam duke shkuar për të dërguar jashtë pjesën tjetër. I dërguar gjysmën sepse unë nuk mendoj Gmail do të lejojë ata që të kalojnë nëpër. Pra vetëm mos harroni, sot është dita e që ju të mësuar se unë mund të përdorni Gmail. Kjo ishte e tmerrshme. Një duartrokitje e madhe për Maya. Faleminderit. Të gjithë të drejtë, kështu. Çfarë [BEEPS] Ne morëm një beeps disa, po? Në rregull. Tani unë jam duke shkuar për të marrë me të vërtetë 700 email pakënaqur prapa nga shokët e klasës. Pra, të paktën ne do të shohim në qoftë se kjo ishte e vlefshme. Pra, çfarë shkoi keq? Unë do të kuptoj se çfarë shkoi gabim pas faktit, por vetëm shikoni se sa e lehtë kjo ishte për të bërë që në PHP. Pra, çfarë mund të bëjë në fakt tani që ne kemi këtë shprehurit të PHP. Kjo was-- se ishte e tmerrshme. Në rregull. Pra, kjo ishte ajo që duhej të dalë. Kjo është më testimi këtë mëngjes në tim telefon, screenshot aktuale e telefonit tim. Por tani le të konsiderojmë pse Ne jemi të vërtetë futur të gjitha të këtij stuff në vendin e parë. Pra, qëllimi nuk është që të shkruaj këto programe të cilat janë të shkruara në command line, e drejtë? Kështu që kam shkruar një të thjeshtë përshëndetje program, kam shkruar një program i vogël që bën conditionals, dhe përdorur një linjë të lexuar dhe kështu me radhë. Dhe në teori, unë vetëm shkroi një program që më ka dërguar jashtë 800 mesazhet me tekst, të japë ose të marrë 800. Dhe se programi ishte e gjitha ende të drejtuar në rreshtin e komandave. Dhe kjo sigurisht është jo web, e drejtë? Qëllimi tani është të fillojë duke përdorur ajo që unë pretendojnë është një lehtë për t'u përdorur gjuhës, guxoj të them një më shumë gjuha e fuqishme në aspektin nga karakteristikat që vijnë me të, për të filluar shkruar kodin që gjeneron web pages. Kështu që herën e fundit dhe javën e kaluar, kemi biseduar për HTTP dhe HTML. Dhe çfarë është e bukur për HTML është se kjo është vetëm teksti i pastër. Dhe teksti është sigurisht diçka që ju mund të printoni duke e quajtur fjalë për fjalë të shtypura f funksion, ose funksioni shtypura. Dhe me të vërtetë, kjo është ajo që PHP është tani do të na lejojë të bëjmë. Kështu ndër shembujt ne kanë në kodin e sotme burim, përveç disa të kodit që kam vënë atje një moment më parë, ne kemi programe si kjo për shembull. Froshims, ose Freshman I brendshëm Sport, ishte në fakt një nga extracurriculars parë Unë u përfshi me vite më parë. Dhe shokun tim dhe unë, me disa fëmijë të tjerë në kampus, përdoret për të drejtuar programin froshims. Unë jam marrë mesazhet e mia tekst tani. Tani kështu që ne, mbrapa në ditë, kështu që kjo ishte 1996 apo më shumë, ka pasur një internet, por nuk kishte asnjë process-- atje nuk ishte website për froshims. Dhe kështu që në qoftë se ju të kërkuar për të nënshkruar për futboll ose volejboll apo çfarëdo, ju do të plotësoni këtë gjë e quajti një copë letër, dhe ju do të ecin nëpër Harvard oborr, dhe ju do të rrëshqitje atë në postë slot e Proctor, i cili ishte Wigglesworth, një dorms. Dhe kjo ishe regjistruar. Dhe ai ose ajo do, atëherë kompozoj një email tek ju me dorë, ashtu si unë vetëm e bëri këtu me Maya, dhe pastaj ju do të konfirmohet si ka qenë i regjistruar. Pra, kjo ishte si i ulët varur fruta, kështu që të flasin. Ajo ishte lloj i trashë që ne ishim duke përdorur letër për këtë. Unë donte që ne të jetë në gjendje për të shkuar vetëm në një faqe interneti, ose kanë freshmen shkojnë në një website, regjistrohu për sport, dhe vetëm automate një shumë të këtij stuff duke vënë emrat dhe e-mail e tyre dhe kështu me radhë në një bazë të dhënash. Dhe në fakt, versioni i parë e internetit, duke përdorur HTML super shëmtuar, mund të dukej diçka si kjo. Ajo ishte në fakt, për ironi, më shumë turpshme kërkuar se këtë e pasme pastaj. Por kam përdorur një gjuhë programimi. Jo PHP, por më tepër i quajtur Perl, e cila është një gjuhë e vjetër, por shumë të ngjashme në shpirt. Dhe unë vetëm plotësisht mësoi atë për veten time. Dhe ajo mori mua një kohë për të kuptoj atë, duke i kërkuar shumë pyetje të miqve. Por idetë atje ishin të njëjtë. Sepse ajo që PHP është projektuar të vërtetë sepse nuk është një temë command line ne vetëm luajtur me, por për programimin e web. Është e lidhur me të vërtetë në funksion të saj vendosur në web, si më poshtë. Kjo është froshims. Dhe në qoftë se unë të kërkuar për të regjistrohen në këtë formë, kjo është mjaft e shëmtuar, sigurisht, por më lejoni të shkoj përpara dhe të jetë një student më pak të rehatshme, dhe çfarëdo sport për Matthews, klikoni Regjistrohu. Ajo që unë dua të jem në gjendje të bëjë është paraqesë informacion nga një formë, jo në server Google si ne e bëmë për herë të fundit, krejtësisht të mashtrimit duke përdorur backend e tyre, unë duan të zbatojnë vet kodin tim backend. Që do të thotë e shkrimit PHP kodin që jeton në një URL që të dhënat formë mund të dorëzohen në. Dhe pastaj kodin tuaj, shkruar në PHP në një server, pastaj mund të përgjigjet për këtë dhëna përdoruesi. Si emrin e tij apo të saj, apo nivelit rehati, ose fjetore, dhe pastaj të bëjë diçka me të. Në këtë rast, unë vetëm stupidly shtypura it out si tekst, e cila nuk është e gjitha që goxha. Por ju mund të patjetër imagjinoni, nëse ju e dini HTML, dhe ju së shpejti do të dini se si për të gjeneruar HTML me shtypura f, dhe të shtypura, dhe funksione të ngjashme, ju mund të patjetër të gjenerojë një faqe prettier web që thotë, hej David, ju tani jeni regjistruar. Ju jeni një pak të rehatshëm student nga Matthews, e drejtë? Ju mund të përdorni vetëm një bandë e tërë e% SES, ose formatimin e teksteve kaçurrel dhe shenja e dollarit simbol I përdorur një moment më parë, në gjenerojë tekst që është më shumë përdorues miqësore se sa kjo. Pra, le të marrin një vështrim në këtë skedë një. Froshim zero dot PHP duket si ky. Kur unë ringarkoni CS50 IDE, zero froshim duket si ky. Kjo është froshim zero dot PHP. Dhe çfarë do të vini re në lidhje me këtë dosje? Audienca: [padëgjueshme] SPEAKER 1: Na vjen keq, pak louder? Audienca: [padëgjueshme] Kjo është e gjitha në HTML. Dhe në fakt, kjo është, sepse çfarë është interesante në lidhje me PHP është se ajo është projektuar të jetë, për më mirë ose për keq, përzier me kod HTML. Dhe në fakt, edhe pse kjo file, froshim zero dot PHP, ka një koment PHP në krye e saj, kjo është e gjitha vetëm HTML. Por nga ana tjetër, në qoftë se unë të hapur, le të të themi, regjistrohu zero dot PHP, e cila ka vetëm një koment të madhe në krye. Edhe kjo duket pothuajse tërësisht si HTML, përveç për çfarë? Line, çfarë, 21 duket pak i çuditshëm. Por vini re unë jam i hyrë në mënyrën PHP me pikëpyetje kllapa e hapur PHP. Pastaj unë kam marrë disa sende. Dhe pastaj në fund të atij linjë pothuajse kam, pyetje shënuar PHP. Dhe kjo është ajo që dua të them me përziera. Ju mund të shkruani HTML që ju vetëm dëshironi server për të nxjerr nga goja. Por në qoftë se ju doni të bëni diçka partway dinamike përmes faqes, si të futur emrin tim ose fjetore apo të nivelit rehati, Unë mund të përdorin një funksion si r shtypura, i cili është shtypura gjithkund rekursive, që vetëm do të thotë shtypura nga këtë variabël, formatimin atë megjithatë ju dëshironi. Kjo nuk është e vërtetë për qëllimet e njeriut, kjo është vetëm për debugging apo qëllime diagnostike. Pra, kjo është se si unë e bëri atë. Nëse unë shkoj në vend froshims dy dot PHP, vini re se veprimi i kësaj forme nuk është i regjistruar zero dot PHP si old-- ai i mëparshmi vërtetë ishte. Por kjo është regjistruar dy dot PHP. Pra, le të shohim se si ky sillet pak ndryshe. Nëse unë shkoj në versionin e dy. Nëse këtu, në qoftë se unë regjistrohem si Davidi, më pak të rehatshme, nga konvikt i Mathews, regjistrohen. Pra, këtë herë ajo ka thënë, ju janë të regjistruara, jo të vërtetë. Le të shohim se çfarë kam bërë këtu. Në qoftë se unë shoh në regjistër dy dot PHP, kjo ka një kod shumë PHP. Kjo është një pastruese pak, edhe pse ajo ende përfundon pak kohë të gjatë në këtë linjë. Vini re këtu. Unë të shtypura nga HTML tag time, tag im kreu, tag im titullin, kreu, trupi. Dhe pastaj unë të fillojë për të thënë gjëra të tilla si të hyrë në mënyrën PHP. Dhe kështu që tag, kllapa e hapur Mark PHP-- pyetje PHP thotë: hej, server, execute-- interpretojnë sende vijim si PHP derisa ta shohin tag fund. Dhe, edhe pse ju nuk mund të di ndonjë PHP tjetër se e keni parë deri më tani, ju mund të lloj të lexoni atë mjaft intuitive. Nëse emri është bosh, apo rehati është bosh, apo konvikt është e zbrazët, çfarë të bëj? Çfarë mund të them për përdoruesit? Ju duhet të jepni emrin tuaj, rehati, dhe fjetore, e kështu me radhë. Tjetër, unë them se ju jeni regjistruar, dhe jo të vërtetë. Dhe unë nuk them të vërtetë sepse nuk ka asnjë bazë të dhënash. Unë nuk jam duke bërë asgjë me të dhënat. Unë jam vetëm duke hedhur atë larg për qëllime demonstrim. Tani unë lloj i skimped mbi linjë 22. Ka më shumë sintaksë atje, por shenja e dollarit nënvizojnë post është lloj i interesant. Dhe kjo është ajo që është e bukur për PHP. Në PHP, ju keni çfarë janë quajtur disa ndryshore super globale. Ata janë lloj i edhe më e rëndësishme se variablave globale. Dhe këto, të gjithë kapitalizuar si e tillë, eja me PHP. Pra, nëse ju keni një server që ka një web server instaluar, si Apache, dhe ju instaloni gjuhën Mbështetje për PHP, të gjithë një e papritur ju mund të filloni duke përdorur këto super Variablat globale në kodin tuaj. Dhe çfarë është e bukur për PHP është se në qoftë se ju vetëm shkruaj një fotografi që përfundon në dot PHP, e vënë atë në një web server, dhe pastaj ju të paraqesë një formular me të nëpërmjet kësaj tag veprimit dhe një tag formë, që atribut veprim në formë tag, PHP dhe web plotësisht shifra se si për të rrëmbyer të gjitha këto çifte kyçe me vlerë jashtë e URL si fjalë Mark q barabartë macet, ajo do të kuptoj se si për Q dhe macet. Nëse ju të paraqesë një foto, apo një emër përdoruesi, ose një fjalëkalim për të si Facebook, PHP do të kuptoj se për ju ku të gjitha të dhënave që është. Dhe kjo vetëm do të dorëzojë ju një grup shoqerues quajtur dollar pas underscore shenjë, ose shenja e dollarit nënvizojnë marrë, varësi të faktit nëse ju jeni duke marrë apo pas aplikimet. Dhe kjo vetëm do t'ju dorëzojnë një ndryshore super globale, kështu që në qoftë se ju doni të merrni në emër se përdoruesi ka dorëzuar nëpërmjet këtij web formë, ju fjalë për fjalë vetëm thonë emrin e ndryshores super globale, kuotë, mbyll thonjëzat, emri. Dhe të japin kuotën, ngushëllim mbyll thonjëzat, dhe të japin kuotën, fjetore mbyll thonjëzat. Dhe ne jemi duke shkuar për të jetë në gjendje të bëjë kjo dhe shumë më tepër me PHP. Dhe, edhe pse kjo ishte Një shikim shakullinë në atë, ne do të zhyten në më shumë javën e ardhshme. Ne do të futur një bazë të dhënash kështu që ju jeni në të vërtetë do të fillojnë zbatimin e vet based-- tuaj e-tregtisë si faqen e internetit në kohë vetëm një jave. Pra, ne do të ju shohim herën tjetër, dhe shpresoj se ju mori mesazhe me tekst. Bye. [Muzika] [DERE HAPJA] SPEAKER 2: Hey. SPEAKER 3: Si është puna? SPEAKER 2: Çfarë po bën? SPEAKER 3: Duke punuar në një sërë problemeve. SPEAKER 2: Bukur. Lartë pesë. [HIGH FIVE] Çfarë are-- uh, çfarë po bën këtu? SPEAKER 3: vetëm jashtë në lartësi. Vetëm kam kthyer nga palestër. Unë nuk mund të ndihmojnë por të vini re kur ne të lartë Fived, se ju keni duart goxha i përafërt. A ju shkoni në palestër? SPEAKER 2: Jo. Jo. SPEAKER 3: Dude, ju duken goxha i madh. E cila është e keqe, sepse të gjithë e dinë 8-top është njeri i madh në kampus. High-pesë. SPEAKER 2: Uh, nr. Jo, unë mendoj se unë jam i mirë. Unë mendoj se unë jam i mirë.