[MUSIK SPELA] DAVID J. MALAN: Okej. Detta är CS50. Detta är början på veckan åtta. Och ni kanske minns att vi slutade Förra gången tittar på ett nytt språk helt och hållet. I själva verket, en som är ganska lätt och det är inte ens ett programspråk. Det är ett märkspråk som låter oss faktiskt strukturera och göra webbsidor. Och när du någonting annat jämförd med this-- eller snart kommer, om du inte redan har. Vi kommer att använda Cascading Style Sheets, eller CSS, vilket är en annan typ av språk med egenskaper och värden det kommer att låta oss göra Saker som ändrar färg och ändra positionen och dessa typer av tweaks. Men idag och framåt, börjar vi fokusera på mer kraftfulla språk, faktiska programmeringsspråk som PHP. Så PHP har funnits under en längre tid. Och som du ser, det utformades huvudsakligen tidigt för faktisk användning i webbutveckling och faktiskt generera webbsidor. Så vad slags funktioner gör ett språk behöver för att göra webben sidor dynamiskt med det? Med andra ord, om du vill skapa innehåll dynamically-- som Facebook s Newsfeed, som ändras hela tiden, eller snabbmeddelanden som dyker upp då att time-- som vad är det central del av funktionalitet du behöver i ett programmeringsspråk som skulle låta dig dynamiskt skriva ut ny information på skärmen? STUDENTEN Code. DAVID J. MALAN: Code. OK. Vi tar det. Lite mer exakt. Jag menar, kan vi göra detta med C, ärligt talat. Det skulle vara en smärta i nacken. Men-- är detta engagemang? STUDENT: Ja. Variabler, kanske? DAVID J. MALAN: Variabler. OK, visst. Variabler kan säkert hjälpa oss. Och även något enklare. Vi använde det i den allra första program för den allra första dagen när vi faktiskt sa "Hej världen". STUDENTEN Print. DAVID J. MALAN: Skriv ut, eller hur? Skriv ut eller printf i värld av C. Så hela den här tiden, vi har haft på vår förfogande en language-- C i particular-- och även Scratch för den delen som kan generera textsträngar. Tja, om HTML, som vi såg förra veckan, är bara en massa textsträngar om än med öppna fästen och stängda konsoler och något slags rim och anledningen till det, ja då kunde vi verkligen börja generera webbsidor antingen manuellt genom att skriva ut dem i gedit eller i Microsoft Word, för att matter-- vi behöver bara en textredigerare. Eller vi kan skriva kod, till ditt förslag tidigare, det skulle låta oss dynamiskt generera HTML, och det är vad vi kommer att börja göra med PHP och slutligen även med en språk som kallas JavaScript är att använda ett språk för att skapa en annan. Och faktiskt, det är vad Facebook och många, många andra platser göra för att faktiskt dynamiskt visa ny information till dig. Så låt oss börja med this-- a kryptiskt ser linjen, men en det är faktiskt ganska kraftfull. Hittills har vi använt C, vilket är en kompilerad språk. Och bara en snabb recap-- en kompilerad språket har vad karakteristiska? Du måste självklart att sammanställa det, men vad betyder det? Yeah? STUDENT: Det måste vara monteras maskinkod. David J. MALAN: OK. Det måste monteras till maskinkod. Så du tar din källkod, vilket är en slags engelsk-liknande. Du konverterar det till något lägre nivå, vilket slutligen kallas objektet code-- 0 s och 1 s. Och det är dessa 0 s och 1 s som en CPU, som de som gjorts av Intel, faktiskt förstår. Nu, PHP och Python och Ruby och JavaScript och klasar av andra språk är inte sammanställt språk, men tolkade språk, vilket innebär att du bara skriva in dem och sedan du behöver inte förvandla dem till 0 s och 1 s. Du istället bara ger sedan som input till någon annans program, kallas en tolk. Och den personens Programmet har utformats att förstå vad var och varje symbol i Python eller PHP eller Ruby eller valfritt antal andra språk betyder. Och så allt vi behöver är ungefär så här. Så i själva verket kommer jag att gå över till apparaten här, bara i någon gamla fönster, och vi är kommer att gå vidare och öppna en fil som heter, säger, hej. Nu tidigare, kanske jag har sparat detta även med en filändelse, men jag ska göra något ännu enklare här. Jag kommer att gå vidare och starta denna fil med detta kryptiska syntax. Så "user, bin, env, för miljö, php. " Detta är helt enkelt en rad kod som är ska berätta mitt operativsystem, gå hitta i din lokala miljö vad det nu är, varhelst PHP är-- den interpreter-- och gå vidare och använda den tolk att tolka följande kod. Nu är denna typ av en ful funktion i PHP. Men i detta språk, något gång du skriver PHP-kod, du måste ha en av dessa ful PHP-taggar avgränsar början din code--