>> DOUG LLOYD: so haben wir eine Menge Arbeit in C durchgeführt,
und C ist eine wirklich coole Sprache, weil es Ihnen
die Fähigkeit, wirklich zu tauchen niedrigen Niveau in Ihre Programme.
Wir bekommen, die Dinge so zu tun wirklich Minute als Manipulation
einzelnen Bytes des Speichers.
Recall, die wirklich Zeiger ermöglichen es uns, dass die Flexibilität.
>> Aber brauchen wir immer zu haben, daß feinkörnige Detaillierungsgrad
in unseren Programmen?
Wahrscheinlich nicht, oder?
Und wenn wir gehen zu müssen ein Kompromiss zwischen Sein
in der Lage, wirklich, wirklich Minute Dinge und wirklich, wirklich
große Dinge, die wir nicht zu denken, etwa, haben wir nicht zu implementieren
diese wirklich große Ideen, wenn sie sind bereits für uns gebaut,
in der Regel für den Bau von großen Programme oder Großprojekte,
wir sind wahrscheinlich zu irren auf der Seite der mit mehr Sprach Sachen in gebaut
für uns, anstatt die Low-Level-Zeug.
Und das ist, wo PHP kommt wirklich in.
>> Jetzt, einer der Gründe, dass wir in PHP CS50 lehren
ist, dass es stark von inspiriert C. Und in der Tat, meiner Meinung nach,
gibt es eigentlich zwei Vorläufer Sprachen,
sind heutzutage sehr verbreitet.
C und Lisp.
Und sie sind Vorläufer Sprachen weil jeder anderen modernen Programmiersprachen
Sprache, die entwickelt wurde Seitdem ist inspiriert
durch die eine oder andere syntaktisch.
PHP ist sehr ähnlich syntaktisch bis C, während Sprachen wie Scheme,
zum Beispiel, die können Sie gehört haben,
ist stark von einer Sprache inspiriert genannt LISP, die eine ältere Sprache ist.
>> Also der Grund, warum wir lehren PHP in CS50 ist, dass,
durch das Wissen, C, wie grundlegend wie Sie an dieser Stelle tun,
Aufnehmen von PHP, die Sie das verleiht Fähigkeit, viel Höherem Niveau zu tun
als C tut, ist nicht so viel von einem Hindernis,
weil Sie bereits über die Grundidee der Syntax.
C ist schon seit fast gewesen 45 Jahre an dieser Stelle.
PHP ist schon seit über 20 Jahren.
Und dadurch, dass 25 Jahre dazwischen, Programmierer
festgestellt, dass sie es sehr viel lieber höhere Fähigkeiten,
und die Fehler und Kämpfe von den 20 Jahren dazwischen
führte zu PHP und andere moderne Sprachen.
>> PHP ist eine großartige Wahl der Sprache für Software-
dass allow-- für Software dass--, wo Sie
benötigen, um Dinge zu tun, dass in C sind wirklich kompliziert.
So zum Beispiel, arbeitet mit Zeichenfolgen in C
ist sehr kompliziert, weil wie wir wissen, Zeichenfolgen in C
sind wirklich nur Arrays von Zeichen.
Es ist nicht über einen eingebauten Datentyp.
Oder vielleicht noch grundsätzlicher, etwas, das wir noch nicht einmal in C abdecken,
was ist, wenn Sie tun müssen, einige Computer-Vernetzung?
Gut?
>> C hat die Fähigkeit, es zu tun, aber es ist so Arkane und so schwer zu tatsächlich tun.
Wäre es nicht schön, wenn das sein, Sprache hatte einen eingebauten, einfachen Weg
um Vernetzung zu implementieren?
Und PHP ist eine Sprache, das macht, oder erleichtert, dass ein bisschen mehr.
Wie ich schon sagte, ist PHP sehr stark inspiriert C. Die Syntax ist sehr ähnlich.
Und so sollte es hoffentlich machen die Übergang von einem zum anderen
ein wenig weicher als einige andere Sprachen sein könnte.
>> Zu schreiben, PHP zu starten, öffnen gerade eine Datei mit der Dateierweiterung .php.
Technisch ist das nicht tatsächlich erforderlich,
aber wenn Sie Dinge wie Syntax möchten Hervorhebung im IDE, so dass diese Art
Namen oder Variablennamen, Funktionen, Sie wissen, die Schlüsselwörter der Sprache
werden in einem hervorgehobenen spezifische Farbe, die Sie in der Regel
möchten Sie Ihre Dateien mit dem Namen eine bestimmte Dateierweiterung.
So haben wir unsere Datei mit einer .php benannt Erweiterung, dann aber auch mit PHP,
alle PHP-Code zu schreiben, dass wir in Datei muss in diesen PHP eingeschlossen werden
Trennzeichen, die wir sehen, hier auf dem Bildschirm.
Befestigungswinkel? Php zu starten.
Dann schreiben wir alle unsere PHP Code, die wir wollen dazwischen.
Und dann ?
spitze Klammer zu schließen.
>> Wenn wir dies nicht tun, dann was wird passieren?
Es wird nicht zum Absturz zu bringen.
Es ist nicht zu gehen wirklich ruinieren unser Programm.
Aber es ist nicht zu haben, die Wirkung, die wir wollen.
Was wird passieren, wirklich, dass, wenn wir versuchen, und führen Sie dieses Programm,
alles, was nicht zwischen diesen Trennzeichen wird sich heraus wörtlich gedruckt werden.
Es ist nicht zu gehen tatsächlich führen Sie den Code,
es wird nur drucken Sie es aus wörtlich.
>> Nun, warum ist das so?
So C ist, was bekannt als eine kompilierte Sprache.
Du bist wahrscheinlich kennen der Schritt der Herstellung Ihrer Programme,
Drehen der .c-Dateien und H-Dateien in einer einzigen ausführbaren mit Make,
insbesondere unter Verwendung von Clang als unsere Compiler.
PHP, obwohl, nicht haben diese gleichwertig.
PHP ist, was ein genannt interpretierte Sprache.
Und was bedeutet das?
>> Na ja, bedeutet dies, wir haben nicht zu konvertieren unseren Quellcode in Nullen und Einsen
vorher.
Vielmehr gibt es ein Programm, das heißt auch
PHP, die PHP und versteht, kann Art machen es im laufenden Betrieb.
Das ist nicht wirklich genau, präzise, aber es ist eine ziemlich gute Analogie
von dem, was passiert ist.
Es ist jene Interpretation Nullen und Einsen im laufenden Betrieb.
Und so, wenn sie nicht wissen, wie etwas zu verarbeiten,
wenn er nicht weiß, wie man Prozess PHP, werden Sie wahrscheinlich
wollte, dass Text in es gesetzt, nicht wahr?
>> Sie wollten wahrscheinlich den Code setzen da, auch wenn es nicht zwischen PHP--
die PHP-Trennzeichen.
Aber-- so wird es nicht um es für Sie zu löschen,
ist es nur geht, um im Grunde verwerfen.
Also, es wird gedruckt it out auf den Bildschirm.
>> Dies scheint, wie es eine schlechte Sache, aber eigentlich ist es
gehen, um eine wirklich sein gute Sache, wie wir
zu sehen, wenn wir sprechen PHP-Web-Entwicklung,
weil es bedeutet, dass wir setzen PHP und HTML.
Wir können sie zusammen, um zu verwenden erstellen eine dynamischere Web-Seite.
Aber mehr dazu in der Video-on-PHP-Web-Entwicklung.
>> Also, was ist die Syntax von PHP?
Das ist, was das Video geht.
Lass uns darüber reden.
>> So zu beginnen, Variablen.
PHP-Variablen existieren.
Es gibt nur zwei große Differenzen aus C.
Die erste ist, dass es keine Typangabe.
Wir haben nicht zu sagen, int, char, float, all das Zeug.
Wir müssen nicht mehr tun.
PHP ist eine moderne Sprache.
Es kann herausfinden, was du bist versuche zu tun oder einen besten
erraten, was Sie zu tun versuchen.
Also das ist sehr schön.
>> Die andere Sache ist, dass alle variablen Namen müssen mit einem Dollar-Zeichen beginnen.
Das ist nur etwas, was sich daran zu gewöhnen.
Es ist ein wenig seltsam, denn es ist so, dass PHP kann verstehen,
Was ist eine Variable ist und was nicht.
Also jeden Variablennamen beginnt mit einem Dollar-Zeichen.
So in C könnten wir etwas sagen wie diese, int x = 54.
Wir müssen nicht mehr so ​​in PHP zu tun.
Wir können nur sagen, $ x = 54.
Und wir könnten sagen, dass zum Beispiel in C, wenn wir pound-gehörten die CS50 .h
Header-Datei, könnten wir sagen, String Begriff = "Dies ist CS50."
Wir haben nicht zu, dass in PHP zu tun, wenn.
Wir können nur sagen, $ Begriff = "Dies ist CS50."
Und in der Tat ist nun Zeichenfolge einen eingebauten Datentyp in PHP,
oder vielmehr versteht PHP was ein String ist.
Es ist getrennt von einem Array von Zeichen, wie es in C ist
Alle Ihre Lieblings- Bedingungsanweisungen von C
noch verfügbar sind für Sie zu nutzen.
So dass keine große Übergang gibt.
Wir können sagen-- wir haben können if-Anweisungen wie diese.
wenn $ y 43 oder $ z = 15.
Also das ist ziemlich einfach.
Wir können, wenn und anderes.
Wir können, wenn und else if.
>> Und beachten Sie, etwas, sehr schön hier, und dieses
ist eine Art einer von denen, Vorteile von PHP gegenüber C, Ankündigung
welche Funktion wir hier nicht gerade verwenden?
Wir verwenden ==, um eine Vergleichs Variable $ name, in einen String.
Wir konnten nicht tun, dass in C, oder?
Wir mussten eine Funktion namens verwenden StrComp oder StrEndComp oder jede
der mit ihm verbundenen Cousins.
>> Und so sehen wir bereits diese Vorteile.
Wir haben nicht, etwas zu tun so dumm oder vielleicht unintuitive
so rufen Sie eine Funktion namens StrComp wenn ich will nur, um zu testen,
ob ein Wert einem String.
Ich konnte es einfach verwenden, gleich equals, wie konnte ich nichts anderes tun.
Es gibt also ein Vorteil.
>> Manchmal, übrigens, könnten Sie siehe else if als ein Wort, elseif.
Und das ist OK in PHP als gut.
Also manchmal könnte man sehen, dass.
Es ist kein Tippfehler.
PHP tatsächlich versteht, elseif.
Ich weiß nicht, warum sie beschlossen, zu implementieren, dass,
aber wie wir schon viele Male gesehen in unserer Videos so weit,
wir Programmierern liebe es, wenn wir können die Dinge schnell zu tun,
so am Anfang des Raumes zu befreien ist offensichtlich ein großer Vorteil.
>> Also das ist, if und elseif.
Wir haben auch den ternären Operator, Rückruffragezeichen, Doppelpunkt,
für wirklich Kurzform, wenn sonst oder eine bedingte Verzweigung.
Und es scheint, in diesem, was wir versuchen, hier zu tun
wird die Variable zuweisen $ Brief entweder wahr oder falsch,
je nachdem, ob $ var ein alphabetisches Zeichen.
Also das ist ziemlich ähnlich wie isalpha dass wir mit der von C kennen
Dies ist eine Art der Gegenwert in PHP.
Die Funktion ist offensichtlich genannt ctype_alpha,
aber das ist, wie wir es in PHP.
Also all das sein wird, ist, wenn $ var ist ein Buchstabe, ist $ Brief wahr.
Wenn $ var ist kein Brief, $ Brief ist falsch.
>> Wir haben auch Switch-Anweisungen immer noch.
Wir erinnern daran, diejenigen, die aus C als gut.
An der Spitze gibt, das ist, wie wir es tun so etwas wie get int oder erhalten String.
So PHP hat, dass in gebaut.
Wir brauchen nicht den CS50-Bibliothek nicht mehr.
Wir können einfach die Funktion readline.
Wie das geht zu tun ist, Druck aus der Meldung "Ihr Zustand ist,
bitte ", und dann blinkt Aufforderung Warten auf den Benutzer zur Eingabe von
einige Informationen.
Nun beachtet, was sonst wir mit Schalter tun können.
Wenn Sie es verwendet haben, bevor, Sie können diesen Schalter erinnern
ist so ziemlich auf ganze Zahlen beschränkt und Zeichen, aber jetzt können wir Zeichenfolgen verwenden.
Und in der Tat der switch-Anweisung in PHP ist ein bisschen flexibler
als sein Cousin aus C.
Schleifen.
Genau wie conditionals alle Ihre alten Favoriten sind immer noch da.
Wir haben while-Schleifen, die zählen 1-100 in diesem Fall.
Wir haben beim Schleifen zu tun daß zählen von 1 bis 100,
und wir für Schleifen haben daß zählen von 1 bis 100.
Also keine großen Sprung gibt.
Die Syntax ist ziemlich sehr genau das gleiche,
mit der Ausnahme, jetzt sind wir mit Dollar-Zeichen Variable statt
erklären Integer-Variablen oder etwas wie das für unsere Zähler.
>> Hier ist, wo die Dinge ein viel besser als C, though.
Arrays.
So erinnern, als wir reden über C, um
für uns zu wachsen und schrumpfen Sätze von Informationen,
wir brauchten, um von Standard Sortieren auf diese Idee einer verknüpften Liste,
weil C-Arrays wurden eine feste Größe.
Wir konnten nicht schrumpfen.
Wir konnten nicht wachsen sie.
Wir hatten in den Speicher umzuschichten und alles tun, diesen Wahnsinn
oder verwenden verkettete Listen, die nehmen ziemlich viel mehr Platz.
Aber in PHP, sind Arrays in der Größe nicht mehr fixiert.
Sie können wachsen und schrumpfen kann.
Also noch einmal, diese 20 Jahre, die bestanden zwischen dem ersten Release von C
und das erste Release von PHP, wir beschlossen, dass, wissen Sie,
es wäre wirklich toll, wenn wir dies tun.
Und so setzten wir dies.
>> So PHP Arrays sind nicht festgelegt Größe, und weil PHP nicht wirklich
haben Programmierer vorn gerichtete Vorstellungen von Arten,
können wir Datentypen mischen in unserem Arrays, auch.
So wissen wir nicht einmal, um alle verwenden Zahlen oder alle schwimmenden Punkten,
können wir eine Mischung aus alle verschiedene Arten in einem einzigen Array.
Deklarieren ein Array ziemlich einfach.
Es ist genau wie jede andere Variable.
$ nums = array (1, 2, 3, 4), wobei Array eine Funktion
das ist in PHP gebaut, wird ein Array für Sie erstellen.
Dies schafft eine Anordnung von vier Werten, Zahlen in diesem Fall mit dem Namen $ nums.
Und es gibt mehr als einen Weg, es zu tun.
Und wir sind zu gehen sehen dies viel in PHP.
PHP wird von vielen unterschiedlichen entwickelt Menschen und wächst und wächst und wächst.
Es ist in der Regel nicht nur zwei oder drei Möglichkeiten, um etwas in PHP zu tun,
es gibt in der Regel wie 10 oder 20.
Hier ist nur eine weitere gemeinsame Weg, um ein Array deklarieren.
$ nums = eckige Klammer 1, 2, 3, 4.
So ist diese Art der ähnlich wie C-Winkel br-- geschweifte Klammer-Notation, statt. $ -
oder es würde int nums quadratisch sein Klammern gleich geschweifte Klammer 1, 2, 3, 4.
In PHP ist es $ nums = square Halterungen 1, 2, 3, 4.
Aber diesen beiden Beispielen mich hier zu geben eine Anordnung von in diesem Fall vier Zahlen.
>> Was, wenn ich etwas auf jetzt heften?
Nun, ich kann nur sagen, $ nums 4, die wieder, wir sind immer noch das Zählen von 0 hier
in PHP, würden die fünfte sein Element des Arrays.
Ich kann nur sagen, dass.
Ich werde nicht um eine seg leiden Schuld, weil mein Array ist nur
gehen zu wachsen, dass unterzubringen.
Das ist ziemlich nett, nicht wahr?
Und in der Tat, ich weiß nicht einmal, um anzugeben, wo ich will sie setzen.
Ich kann nur sagen, das und nur tack es richtig bis zum Ende,
oder ich konnte auch nur sagen $ nums 20 oder 1000.
Es spielt eigentlich keine Rolle.
Es ist immer noch gerade dabei, tack es richtig bis zum Ende.
>> So kann ich wachsen und as-- wir sind nicht dabei, es hier zu decken,
aber ich kann spleißen oder Streifen Elemente aus dem Array sowie,
und das Array wird schrumpfen, um unterzubringen dass jetzt fehlenden oder leeren Raum.
Es gibt einen anderen Weg, um tack etwas auf eine Anordnung,
der eine Funktion aufgerufen array_push.
Also noch einmal, nur dieses eine Idee, Lage, Dinge zu viele verschiedene Möglichkeiten zu tun.
Also haben wir drei verschiedene Arten jetzt gesehen, ein weiteres Element auf eine Anordnung anzuheften.
So dies fügt ein weiteres Element bis zum Ende des $ nums Array.
Und wir können unsere Datentypen mischen.
So konnte ich eine Reihe von nicht 1, 2, 3, 4, aber 1, wahr, 3, 4,
wo die wahre ist ein Boolean, und dann wenn ich auf ein anderes Element tack
für dieses Array, vielleicht ein String, die Zeichenfolge "fünf" Ich könnte das tun.
Und nun meine Array würde 1 sein, wahr, 3, 4, fünf.
Das Wort fünf, nicht die ganze Zahl 5.
So viel Flexibilität gibt.
>> Die Flexibilität wird noch besser, wenn,
weil PHP hat die Unterstützung für etwas, rief ein assoziatives Array.
Und wir irgendwie vage gesprochen zu assoziativen Arrays in C
im Zusammenhang mit der Hash-Tabellen, weil was assoziativen Arrays sind wirklich alle
zu machen Schlüssel Wert-Paar-Mappings.
Und in diesem Fall ist der, wenn keys-- wir sind mit Arrays von C vertraut sind,
die Tasten sind Indexnummern.
0, 1, 2, 3.
Und die Werte sind, was wir finden, dass Array 0, Feld 1, Feld 2, und so weiter.
So sind die Tasten Indizes, und die Werte sind
was ist in diesem Array Lage, durch diesen Index angegeben.
>> Aber in PHP, haben wir nicht, dies zu tun Begriff der Array 0, Feld 1, Feld 2
nicht mehr.
Wir können jetzt mit tatsächlichen Worte Schlüssel, Werte abzubilden.
Und so konnte ich so etwas wie dies zu sagen.
Ich könnte ein Array mit dem Knopf eckigen Klammer-Syntax wie folgt.
$ Pizzen = eckige Klammer "Käse" und dann
diese Art der Doppelpfeil-Notation, 8.99 "pepperoni" arrow 10.99-- 9.99,
und so weiter.
Und was ist denn hier los?
Was bin ich eigentlich?
Ich erstelle Schlüssel-Wert-Paar-Mappings.
Also anstatt zu sagen, zum Beispiel, Pizzen 0, 1 Stück, Pizzas 2,
Ich kann jetzt sagen, Pizzas Käse, Pizza Peperoni,
und beziehen sich auf die Werte zugeordnet.
>> So, hier sind unsere Schlüssel in grün.
Käse, Peperoni, Gemüse, Buffalo Chicken.
Hier ist der Pfeil, der macht dieser Schlüssel-Wert-Paar-Mapping.
Und dann sind hier die Werte in diesem Array Lage.
Also ist es wie wenn man sagt Array 0 gleich 8,99.
Der Schlüssel ist 0.
Der Wert ist 8.99.
Ich kann jetzt sagen, Array-Käse, oder in diesem Bei Pizza-Käse, Käse ist der Schlüssel,
und was finde ich zumin Pizza-Käse ist 8.99.
Das ist der Wert, den ich dort zu finden.
>> So kann ich sagen Dinge wie. $ Pizzakäse = 7.99.
Sagen, ich bin mit einem Verkauf.
Ich möchte dis-- Ich möchte Drop der Preis für die Käse-Pizza.
Oder ich kann das Gemüse verwenden Pizza als Teil einer Bedingung,
oder ich kann ein neues Element hinzuzufügen meinen Array, so wie ich vorher tun könnte.
Ich kann ein neues Element, um dieses Add assoziatives Array mit dem Schlüssel "Speck"
und der Wert 13.49.
>> Aber diese Art stellt ein Problem, Wenn man darüber nachdenkt, für eine Sekunde.
Wie würden wir durchlaufen dieses Array?
Recht?
In C, wir haben nur wäre eine for-Schleife, in der Regel, dass
würden von 0 auf der Flucht Größe der Anordnung minus 1.
Das Array hat n Elemente an, die gültig Indizes sind 0 bis n minus 1.
Also haben wir eine for-Schleife zu verwenden Schritt durch jedes einzelne Element.
>> Aber das ist nicht wirklich mehr der Fall, nicht wahr?
Jetzt, wo wir Schlüssel-Wert-Paar Mappings, wo die Schlüssel sind Worte,
wie können wir überlaufen allen Wörtern?
Nun, zum Glück hat PHP ein Weg, um mit diesen zu beschäftigen,
und so werden wir wieder springen für eine zweite Schleife
um eine vierte Art von Schleife einzuführen, dass existiert in PHP genannt foreach-Schleife.
Und was für eine foreach-Schleife tut, ist, es ist im Grunde die gleiche Idee.
Sie können es für jede Art von Array zu verwenden.
Aber es ist im Grunde die gleiche Idee wie eine for-Schleife,
mit der Ausnahme, statt mit Indexnummern, die Sie gerade
haben diese seltsame Syntax, wo Sie jedes einzelne Element nennen
ein Name für die Zwecke dieser Schleife.
>> So dass in diesem Fall foreach ($ array as $ key).
Grundsätzlich wie Kommentar Noten, innerhalb dieser foreach-Schleife,
es wird gehen über jedes einzelne Element $ Array, das typischerweise
werde ein assoziatives Array sein, aber kann wirklich jede Art von Array sein
dass Sie möchten, in PHP.
Und jedes Mal, dass in eine for-Schleife, die Dir vielleicht
haben gesagt, $ array eckigen Klammern $ i, könnte man einfach sagen, $ key.
So dass $ key wird einen Alias ​​für jeden Index Ihrer PHP assoziatives Array,
und so kann man es so zu verwenden.
>> So zum Beispiel, haben wir Jetzt haben unsere Pizzen Array.
Ich habe Art steckte sie in die Ecke
so können wir es verwenden, um ein kleines Beispiel zu tun.
Wenn ich sage: foreach ($ Pizzen $ Pizza), nun, was passiert?
Nun, ich werde durch jede Iteration einzigen Element des Arrays $ Pizzen,
und auf diese Weise, ich werde nennen jedes Element, wenn ich innen
des Körpers, dass for-Schleife, $ Pizza.
>> Also das ist eine Art Stand-in, Rückruf, dass $ pizza
ist ein Stand-in für das Sagen $ Pizzen eckigen Klammern $ i
wenn wir verwendet haben eine for-Schleife, wo wir könnten von $ i = 0 bis, in diesem Fall gehen,
$ i = 3.
Wenn wir keine Schlüsselwertpaare Hier würde dieses Element 0, 1, 2, 3 sein kann,
und wir würden eine for-Schleife verwenden, um zu gehen $ Pizzen 0, $ Pizzen 1, $ 2 Pizzen,
$ 3 Pizzen.
So, jetzt nur $ Pizza wird Substitution für diese individuellen Schlüssel.
>> Also, was wird das wohl ausdrucken?
Ich Ausdrucken $ Pizza.
Was soll ich zu finden at-- wenn ich drucken Sie $ Pizzen, $ i?
Recht?
Wenn ich schon zum Ausdrucken das i-te Element der Pizzas,
was soll ich drucken?
Ich werde aus dem Druck Werte an dieser Stelle, nicht wahr?
Wie, wenn wir taten, Diese im Rahmen des C,
wir normalerweise nicht nutzen Sie unser Iterator Variable int i = 0, i ist kleiner als 3,
i ++, um aus 0, 1, 2, 3 zu drucken.
Wir Ausdrucken Array 0, Feld 1, Feld 2, Anordnung 3.
Und so, was diese druckt das ist.
Es ist die Liste der Preise.
8.99, 9.99, 10.99, 11.99.
>> Jetzt eine kurze Anmerkung hier.
Ein foreach-Schleife nicht unbedingt drucken Sie die Dinge in Ordnung.
Es ist nicht garantiert.
Es spielt in der Regel.
Es ist in der Regel auf der Reihenfolge, in der Basis wobei die Elemente zum Array hinzugefügt werden,
so einfach vergessen Sie das nicht.
Es ist vielleicht nicht in Ordnung zu sein.
Aber eine foreach-Schleife wird durchlaufen für jedes einzelne Element
des Arrays in Frage.
In diesem Fall wird wieder dass Array $ Pizzen.
>> Ich kann die Syntax ändern, aber, wenn Ich möchte sowohl den Schlüssel und den Wert.
Anstatt zu sagen $ Pizzen wie $ Pizza, kann ich sagen.
Und wenn Sie bei dem, was ich sehen grün markiert hier,
es sieht aus wie ein Schlüssel-Wert-Paar-Mapping.
Und so, wenn Sie-- selbst wenn Sie nicht sind ganz sicher, was er tun wird,
Sie vermutlich schätzen können dass $ Topping wird
der Schlüssel in diesem Fall, und $ Preis wird sich der Wert sein.
Also ich bin jetzt Substitution jedes Element von $ Pizzen als ein Schlüssel-Wert-Paar,
und jetzt kann ich auf die Taste beziehen und Der Wert, der könnte sich als nützlich,
beispielsweise wie folgt.
>> "Eine ganze" - das ist eine Menge von Druck los hier-- "Eine ganze"
Richtfest "Pizza kostet $" Preis und dann Ich drucken Sie eine Periode und einen Backslash n.
So, jetzt, Ankündigung wieder habe ich Zugang zu a key, $ Richtfest, und ein Wert, $ Preis.
So können Sie sich vorstellen, was diese wird sich ausdrucken?
Es gibt eine Menge von print-Anweisungen, aber es gibt nur einen Backslash-n,
so es geht um etwas auf zu drucken ein entire-- auf eine einzige Zeile Code.
>> Wenn ich auf die Taste beziehen und der Wert, dann jetzt,
statt nur in der Lage um aus den Preisen zu drucken,
Ich ausdrucken können so etwas wie dieses.
"Eine ganze Käse Pizza kostet $ 8,99."
Und jetzt bin ich mit all der keys-- Käse, Peperoni, Gemüse,
Büffel chicken-- und die Werte.
8.99, 9.99, 10.99, 11.99 So das ist nur eine andere Art und Weise
um eine foreach-Schleife zu tun, daß anstelle von nur geben Ihnen Zugriff auf die Werte,
sie gibt nur Sie-- es gibt Ihnen Zugriff auf die Schlüssel und die Werte.
>> So Ausdrucken von Informationen.
Ich habe es bereits getan ein paar verschiedene Arten, könnten Sie bemerkt haben.
Die beiden Funktionen wir haben in erster Linie gesehen sind Print- und Echo.
Und für so ziemlich jeder Hinsicht Zwecke, sie sind genau die gleichen.
They're-- gibt es eine sehr subtile Unterschied, dass nicht einmal wert ist
immer in, aber im Grunde überall Sie können die Druck verwenden Sie wahrscheinlich verwenden können
Echo als gut.
>> Und das ist nicht die einzige zwei.
PHP hat eine Menge von verschiedenen Möglichkeiten, Dinge zu drucken,
und es hat auch Möglichkeiten zur Integration Variablen in der Mitte der Saite.
So erinnern die aus C, sind Sie daran erinnern, was Funktion
wir nutzen, um Variablen zu ersetzen in Dinge, die wir wollen, drucken Sie?
Sie verwenden diese wahrscheinlich Funktion eine ganze Menge.
printf, nicht wahr?
Also das ist, was wir vorher hatten im Inneren der Rahmen unserer foreach-Schleife.
Wir hatten diese fünf getrennte print-Anweisungen,
denn das war das einzige, wie ich wirklich zu der Zeit wusste,
wie zum Ausdrucken Nachrichten.
Ich wusste nicht, wie man die Integration Variable $ Richtfest in meine PHP-Code.
Nun, wenn ich nur genommen eine wilde Vermutung, printf, es tatsächlich funktioniert hätte.
printf ist eine Funktion, die ich verwenden kann in PHP, genau wie ich es in C verwenden
>> Und so etwas wie dieses, printf, wieder, wir sind damit vertraut.
Das erste% s wird ersetzt mit dem Wert von $ Richtfest.
Das zweite% s wird ersetzt mit dem Wert von $ Preis.
Und so bin ich interpellating, Das ist nur eine andere Art
zu sagen, ich bleibe die Variablen in diesem Ort.
Also ich bin Einstecken $ Richtfest, wo die red% s ist und $ Preis wo der blaue% s
ist, und dann würde ich die Meldung, "Eine ganze Käse Pizza kostet $ 8,99."
>> Nicht der einzige Weg, ich kann es tun, wenn.
Vielleicht sollte ich diese Methode verwenden.
Dies ist eigentlich, was am häufigsten genannte variable Interpellation.
Ich kann ein Echo zu verwenden.
Ich konnte einen Druck zu verwenden, wie wir sehen werden.
Aber was hier passiert?
>> Zuallererst muss ich Flucht der Dollar-Zeichen.
Denn denken Sie daran, wenn wir tatsächlich waren Drucken Sie sich die Preise der Pizza,
Ich war eigentlich Formatierung sie als Geld Zahlen mit einem Dollarzeichen.
Aber wir sind mit Dollarzeichen auch Variablennamen in PHP dar,
insbesondere, wenn ich Mit dieser Methode der geschweiften
Klammer variable Interpellation Verfahren, brauche ich
auf meine Dollarzeichen zu entkommen, so das nicht der Fall glaube, ich bin über eine Variable im Gespräch.
Es wird tatsächlich, buchstäblich drucken Sie ein Dollarzeichen.
>> So Art von analogize es was Sie sehen, am Ende gibt.
Es ist nicht wirklich Druckbackslash n, nicht wahr?
Es druckt eine neue Zeile.
Dies ist-- es nicht zu gehen Druckbackslash-Dollar-Zeichen,
es wird einfach nur auszudrucken ein Dollarzeichen.
Dieselbe Idee.
Escape-Sequenzen, was diese Dinge sind nicht genannt.
>> Aber beachten Sie, dass ich nicht tun, jede Art von% s Substitutionen,
Ich bin einfach nur buchstäblich einstecken in diesen Variablen.
Und so in this--, was hier passieren würde, ist, dass der Wert von $ topping-- wieder
nur halten mit dem, was wir gewesen sind reden über so far-- Käse bekommen würde
in es eingesteckt ist.
Und $ Preis wäre, was Wert ist an Pizzen, eckige Klammern, Käse,
die 8.99 war.
Und so würde dies auch ausdrucken "Eine ganze Käse Pizza kostet $ 8,99."
Und wie ich schon sagte, ich verwenden könnte Drucken Sie hier anstelle von echo,
und die Funktionalität sein so ziemlich genau das gleiche.
Es wäre ausdrucken dasselbe.
>> Es gibt einen anderen Weg, es zu tun, und dies ist ein weiterer Vorteil,
PHP-Arbeit mit Strings.
Wir können die String-Verkettung zu tun.
Wir konnten dies in C auch tun, Verwendung einer Funktion namens strcat,
aber wieder, wir mussten rufen separate Funktionen.
Es war dieses ganze Durcheinander zu tun.
Wir mussten pound-schließen string.h.
Es war eine Produktion, nicht wahr?
Aber jetzt kann ich nur mit diesem Punktoperator um Zeichenfolgen verketten.
>> Also ich bin Verkettung "Eine ganze" und dann was auch immer der Wert von $ Topping ist,
und dann eine andere String, "Pizza kostet $"
und was auch immer verketten der Wert von $ Preis ist,
und dann ganz am Ende bin ich Heften auf Periode umgekehrten Schrägstrich n.
Und so würde dies auch drucken Sie "Eine ganze" - wieder,
wenn wir über das erste Gespräch Element dieser Pizzas array--
"Eine ganze Käse Pizza kostet $ 8,99."
Zeitraum, umgekehrten Schrägstrich n wieder mit die $ Topping und $ Preis substituierende
für das, was wir in unserem foreach angegeben hatte Schleife als Schlüssel-Wert-Paar-Mapping.
>> PHP-Funktionen zu handhaben.
Funktionen waren Art integraler Bestandteil C, wie wir sahen.
Wie Variablen, wissen wir nicht brauchen, um geben Sie den Rückgabetyp der Funktion,
denn es ist nicht wirklich wichtig.
Und wir nicht angeben, die Datentypen der Parameter auf,
weil sie nicht wirklich Egal, wie wir es in PHP gesehen habe.
Jede Funktion wird eingeführt mit dem Schlüsselwort function.
Das ist, wie wir uns zu zeigen, dass PHP was wir hier reden, ist eine Funktion.
>> Und wir wollen nicht zu haben, befassen sich mit Hauptüberhaupt,
weil der Dolmetscher, die PHP- Dolmetscher arbeitet von oben nach unten,
ungeachtet.
Wenn es sieht, die Sie machen können ein Funktionsaufruf, wird es
gehen Sie finden den Funktionsaufruf, auch wenn er später kommt.
Aber es wird von oben nach gelesen Boden, so dass wir nicht brauchen, um anzugeben,
hier, wo Sie starten.
Sie beginnen in Zeile 1 des PHP und arbeiten von dort herunter.
>> Also hier ist, wie wir schaffen würde eine Funktion namens hard_square.
Es dauert offenbar ein Parameter, die ich rufe $ x.
Diese Funktion ist nur kompliziert , um verschiedene Dinge zu veranschaulichen.
Wir haben immer noch die Rückgabewerte.
Ich bin mit einer for-Schleife hier.
Aber es ist im Grunde nur, was diese beläuft sich auf nur $ x $ x-mal.
Was ich eigentlich tun, ist einfach nur mit x 0 x-mal oder $ x auf Null $ x-mal.
Aber es ist effektiv genau die elbe wie Multiplizieren $ x $ x-mal.
Ich kann immer noch einen Wert zurückgeben, in diesem Fall $ result,
und ich habe eine Funktion in PHP geschrieben.
>> Hier ist, wie Sie es im Kontext zu verwenden könnte.
Also vielleicht bin ich innerhalb von einigen PHP-Datei.
Beachten Sie, dass es in blau Ich habe mein PHP-Trennzeichen verwendet wird,
Winkel Fragezeichen php.
Zwischen denen alle von Die PHP, die ich schreiben möchte.
Also ich bin offenbar werde get-- Ich werde den Benutzer auffordern
mir eine Zahl, Geschäft zu geben, dass variable, Geschäft in dieser Variable $ x,
Was auch immer sie mir.
Dann werde ich echo hard_square dieses Wertes,
und anscheinend geht um in einer neuen Zeile tack
als auch, und dann später an werde ich Definieren Sie die Funktion so hard_square
dass, wenn ich die rufen hard_square,
er weiß, was ich rede.
>> Nun, ich könnte auch tun, etwas wie das.
Dies ist etwas anders.
Es ist fast genau die gleiche wie das, was wir zuvor gesehen haben,
außer, statt nur $ sagen x es als Parameter für hard_square,
Ich sage, $ x = 10.
Das ist also ein Beispiel für defensive Programmierung,
bewachen Ihre Programme vor böswilligen Benutzern.
>> Dies ist ein Weg, um einige Fehler zu tun Überprüfung, dass wir nicht wirklich
haben als Option in C. Wir konnten nie geben Sie den Standardwert von etwas.
Wir hatten immer zu prüfen, ob beispielsweise
wenn wir einen Aufruf an GetString, war es eigensten, wenn unmittelbar nach dem wir
überprüft, dass wir überprüft ob die Saite
dass der Nutzer gaben uns nicht gleich null,
denn wir wollen nicht starten Arbeiten mit einem Null-String.
>> Hier ist dies ein Weg, um gegen die zu schützen.
Wenn der Benutzer nicht geben uns etwas irgendwie, was sollen wir tun?
Nun, wir werden einfach sagen, was auch immer sie nicht geben uns,
wir sind gerade dabei, statt in 10 stecken.
Also, wenn sie nicht einen Wert geben uns, benutzen Sie einfach 10 standardmäßig. Und hier,
feststellen, dass ich mache Ein Anruf bei hard_square,
aber es gibt keine Eingabeaufforderung dem Benutzer, nicht wahr?
Ich mache nur eine leere Ruf.
>> Aber meine Funktion hard_square erwartet einen Parameter.
Was wird das wohl ausdrucken?
Es wird aus 100 ausdrucken, oder?
Da der Benutzer nicht geben Sie mir etwas.
Und so bin ich nur davon ausgehen, dass 10-- 10 ist der Standardwert.
Und so würde dies zu drucken aus 100 in einer eigenen Zeile.
>> PHP-Dateien nicht haben, sein, nur eine einzige Datei.
Sie können mehrere Dateien miteinander zu kombinieren, Ebenso wie Sie in C. Die Art und Weise
wir haben das in C war in der Regel ein zu tun # include um die Header-Dateien in gezogen.
Wir tun das nicht in PHP.
Wir tun so etwas wie require_once.
Und dann gibt es diese ganze Sache, was ist das __dir__?
Das ist nur ein Sonder Variable oder spezielle Konstante,
wirklich, gibt an, dass das, was Ihr aktuelles Verzeichnis ist.
Und so, es wird aussehen im aktuellen Verzeichnis
nach einer Datei namens cs50.php in diesem Beispiel hier,
und es geht um die Datei-Stick an der Spitze der Ihre PHP-Programm,
vorausgesetzt, dass Sie die erfordern setzen einmal Linie an der Spitze der Ihre PHP-Datei.
>> So PHP wird hauptsächlich verwendet, aber nicht ausschließlich, verwendet,
als Sprache für Web-basierte Programmierung.
Das ist wirklich, wie es kam zu sein.
Aber es ist ein Voll Sprache, wie wir gesehen haben.
Wir haben so ziemlich alles, was zu sehen dass sie tun, die ähnlich wie C gibt,
und es kann ein Heck tun viel mehr als das.
>> Aber weil es eine vollständige Sprache, und wir können Befehlszeile Programmierung zu tun.
Wir können Befehlszeilenprogramme ausführen.
Alles, was erforderlich ist, um einen Befehl auszuführen Zeilenprogramm, das in PHP geschrieben ist
ist, dass Sie ein PHP-Interpreter haben.
Es ist also eine Art analog zu mit einem Compiler auf Ihrem System
wenn Sie Ihre C-Code kompilieren wollen um es in ausführbaren Dateien zu verwandeln.
Sie müssen sich ein PHP-Interpreter haben , dass auf Ihrem System vorhanden ist
so dass Sie PHP-Dateien zu interpretieren.
>> Angenommen, Sie haben, und in der Regel Diese Dolmetscher heißt PHP,
und es ist in der Regel mit den meisten gebündelten Downloads oder Installationen von PHP
dass Sie online gehen können, und sicher den Namen der PHP-Interpreter
Wir haben in CS50, IDE.
Alles, was Sie tun, ist Typ PHP-Datei.
Und was Ihr Programm zu tun ist, ist es
gehen zu durchlaufen der Dolmetscher, es ist
gehen, um alles, was es zu ignorieren nicht in Frage zwischen mark--
oder, Winkel Fragezeichen php, die PHP-Trennzeichen, und drucken Sie es aus,
und es wird interpretieren und ausführen die Code innerhalb der PHP-Trennzeichen.
>> Lassen Sie uns also über Pop bis CS50 IDE und einen Blick auf ein paar PHP-Dateien,
läuft ein paar PHP-Dateien, in Befehlszeilenschnittstelle des CS50 IDE.
Also hier in CS50 IDE sind wir und ich habe mir die Freiheit genommen
Öffnen einer Datei mit dem Namen hello1.php.
Und offensichtlich, wird der Inhalt dieses Datei sind nur die PHP-Trennzeichen gibt,
und dazwischen, echo ("Hallo Welt").
Dies ist eine ziemlich einfache PHP-Programm.
Ich werde einfach nach unten scrollen zu meinem Terminal-Fenster hier
und ich werde PHP-Typ hello1.php, drücken Sie Enter.
Hallo Welt.
Das ist wahrscheinlich das, was wir waren erwartet, dass es zu tun, oder?
>> Lass uns gehen und zu nehmen Ein weiterer Blick auf ein Programm.
hello2.php.
So ziemlich die gleiche Sache, nicht viel los hier.
Dieses Mal jedoch, werde ich aufgefordert, dem Benutzer, mir ihre Namen.
Ich verwende wieder diese readline-Funktion.
$ name = readline.
Das ist die Aufforderung, "Wie ist Ihr Name?"
>> Anscheinend bin ich Druck es in einer eigenen Zeile.
Und dann, so dass die Zeile unter das wird die Aufforderung sein,
wo der Benutzer seinen Namen eingeben.
Und dann bin ich mit ein wenig variable Interpellation hier in Zeile 3
zum Ausdrucken "Hallo" und was auch immer der Benutzer.
Das ist also analog zu sagen: Hallo, Komma,% s, wenn wir mit printf in C
>> Also lass uns gehen und zu interpretieren, dieses Programm.
Also noch einmal, ich werde nach unten scrollen zu meinem Terminal-Fenster.
php hello2.php.
Wie heißt du?
Doug.
Hallo, Doug.
Ich habe auch eine andere Datei namens hello3.php.
Ich werde klar mein Bildschirm mit Control L,
und ich werde das auszuführen.
Wie heißt du?
Doug.
Hallo, Doug.
So ist das Verhalten identisch ist hello2.php, aber warum ist es hello3.php?
>> Nun, hier ist der Unterschied.
In diesem Fall kann die Mitteilung dass in Zeile 1 hier,
Ich habe etwas, das nicht zwischen den PHP Begrenzer.
Ich bin einfach nur Druck out-- oder I gerade eingegeben haben, "Wie ist Ihr Name?"
Wenn der PHP-Interpreter sieht dies, es hat keine Ahnung, wie man es als PHP interpretiert,
und so anstatt zu scheitern, ist es nur geht es ausspucken.
>> So bemerkt der Linie 3 nun, mein Aufruf an readline, gibt es keine Eingabeaufforderung mehr.
Ich bin einfach nur eigentlich vor sich geht, wenn zu-- der PHP-Interpreter sieht dies,
es wird zum Ausdrucken "Wie heißt du?"
Dann sieht sie, oh, OK, here's-- alles, was sein wird,
als PHP interpretiert, so das ist, warum es funktioniert.
Ich habe nicht unbedingt auffordern der Benutzer zu-- Innenseite readline,
Ich kann nur noch nach draußen! der PHP Begrenzer
und lassen den Interpreter nur drucken Sie es aus für mich.
>> So dass Sie nicht wirklich nur um einen Satz von PHP-Trennzeichen haben
in Ihrem Programm.
Sie können tatsächlich haben mehrere von ihnen, Öffnen und Schließen von ihnen je nach Bedarf.
Werfen wir also einen Blick auf ein paar Programme
in CS50 IDE, wo wir illustrieren diese Idee,
mehrere Sätze von abgegrenzten PHP.
>> OK, also habe ich eine Datei geöffnet Hier add1.php genannt.
Und beachten Sie, was hier passiert.
Nach wie vor, ich habe eine Einzel PHP Satz von Trennzeichen.
Ich werde aus dem Druck Meldung "Bitte geben Sie mir eine Nummer."
Dann werde ich, um eine Zeile zu lesen und speichern sie in der Variablen $ num1.
Dann werde ich wieder drucken.
Geben Sie mir eine zweite Zahl.
Lesen Sie eine Linie von der Benutzer, speichern was sie tippte in $ num2.
Fügen Sie sie zusammen und speichern, dass führen zu einer Variable namens $ Summe,
und drucken Sie dann aus: "Die Summe dieser beiden Zahlen
ist ", und dann interpellieren gibt die Variable $ Summe.
Lassen Sie uns also einfach laufen diese durch den Dolmetscher
, um zu bestätigen, dass dies, was wir erwarten.
php add1.php.
Bitte geben Sie mir eine Zahl, 3.
Bitte geben Sie mir eine zweite Nummer, 4.
Die Summe dieser beiden Zahlen ist 7.
Das ist 3 plus 4.
OK?
So schrecklich nichts Besonderes gibt.
>> Und nun öffnen add2.php.
Hier habe ich ein paar PHP bekam begrenzt Sätze gibt, nicht wahr?
Linien 1, 3-- Linien 1 und 3 haben keine PHP-Trennzeichen.
Also, wenn der Dolmetscher sie sieht, es ist nur,
werde genau ausspucken was ich dort eingegeben.
Also das ist, wo ich bin tun alle meine Nachfrage.
In den Zeilen 2 und 4 sehen wir die sehr vertraut $? php Art von Trennzeichen,
so dass diese beiden Zeilen sind werde als PHP ausführen.
Und dann auf der Linie 5, habe ich diese seltsame Sache hier, nicht wahr?
Dieser Winkel Fragezeichen Gleichheitszeichen.
Ich werde sogar heranzoomen ein bisschen weiter.
Sie können sehen, das ist, was ich genau dort reden, diese $? =.
>> Es stellt sich heraus, dass es so verbreitet, dass der Grund, dass wir eröffnen eine Reihe von PHP-
Trennzeichen ist, drucken Sie einen Wert ein.
Und das ist alles, was wir tun werden.
Aber es gibt auch eine Abkürzung für das.
$? = Ist eine Abkürzung für PHP sagen so etwas wie $? php echo die Summe
von num1 und num2.
So ist das nur eine Abkürzung für das.
>> Also, wenn ich dieses Programm, php add2.php.
Ich werde heran unten ein wenig.
Bitte geben Sie mir eine Zahl, 4.
Bitte geben Sie mir eine zweite Nummer.
Und da ich nicht wirklich interessieren Datentypen in PHP, kann ich sagen, 4.8.
Die Summe dieser beiden Zahlen ist 8,8.
Diese Funktion verhält sich ziemlich genau das gleiche wie zu erwarten,
auch.
Und ich habe noch eine geöffnet hier oben genannten dice.php.
Versuchen Sie, diese erneut.
Ich habe noch eine hier genannte dice1.php, das auch finden,
hat diese Winkel Frage markieren Gleichheitszeichen-Notation in dort,
aber beachten Sie, dass in diesem Fall bin ich Aufruf der Funktion rand, der, wie Sie
könnte erwarten, eine Zufallszahl erzeugt.
"Sie rollte ein," und es ist zu gehen berechnen eine Zufallszahl, mod 6 +
1.
So dass sie mich Nummer angeben im Bereich von 1 bis 6.
>> Denken Sie daran, dass mod 6 würde mir eine Zahl im Bereich von 0 bis 5,
aber wenn ich die Simulation Würfel rollt, Das ist das, was ich hier mache,
Ich will nicht, diese Würfel, um von 0 gehen bis 5, Ich möchte Würfel, die von 1 bis 6 zu gehen.
Und so ist dies ein Weg, um me im Bereich von 1 bis 6.
Ich tue dies zweimal.
So scheinbar Ich Roll zwei Würfel in diesem Programm.
>> Also werde ich meinen Bildschirm zu löschen, und ich werde php dice1.php zu tun.
Sie rollte A 4 und A 2.
Und wenn ich das Programm wieder, rollte Sie eine 5 und eine 5.
Also jedes Mal, wenn ich das Programm ausführen, Ich erhalte eine unterschiedliche Anzahl,
denn jedes Mal, wenn ich Also, es anzufangen.
Es wird ein neues generiert Set von Zufallszahlen für mich.
>> Also, wenn wir es gewohnt sind laufende Programme aus C,
Wir fahren nach Eingabe ./ das verwendete Name eines Programms, nicht wahr?
Das ist, wie wir alle getan unserer Programme in C so weit.
Wir können dies in PHP als gut tun durch Zugabe von etwas namens
a Kram an die Spitze unseres PHP-Datei.
Ich weiß, es ist eine Art dummes Wort.
Es ist die Abkürzung für Hash-Bang.
Das ist die ersten beiden Zeichen gibt.
Denken Sie daran, wir nennen Ausrufezeichen häufig einen Knall in der Informatik.
Es könnte auch für scharfe Knall sein.
Es gibt ein paar Möglichkeiten, es zu interpretieren.
Aber es ist im Grunde eine besondere Art der Befehl, dass der PHP-Interpreter
versteht, wie, oh, ich will Sie dieses Programm ausführen,
Das ist offensichtlich / user / bin / php, die ist eigentlich, wo der PHP-Interpreter
speziell lebt in unserem System.
So it's--, was hier passiert, ist der Dolmetscher versteht, oh,
Ich bin anscheinend angeblich verwenden in diesem Programm diese Datei ausführen.
Und so ist es Ihnen erlaubt, über den Schritt überspringen
zu müssen, php something.php sagen.
Es gibt einen anderen Fang Hier, nämlich, dass, wenn wir
unsere Programme zu wollen wie erwartet, haben wir
brauchen, um so etwas wie zu tun a Dateiberechtigungen zu ändern.
Und wir werden go-- und wir ein wenig sprechen wenig mehr über Dateiberechtigungsänderungen
in unserem Video-on-MVC, aber es genügt zu sagen, dass dies ist, was Sie tun müssen,
um Ihre .php Dateien ausführbar.
Werfen wir also einen Blick auf diese als unser letztes Beispiel über in CS50 IDE.
>> Also hier in IDE Ich habe zwei Dateien in diesem PHP Verzeichnis, das nicht zu sein scheinen,
genannt .php.
Ich habe eine Funktion namens add-- Ich habe eine Datei namens add3
und eine Datei namens dice2.
Also lassen Sie uns einen kurzen schauen und eröffnen add3.
Und wie Sie zu Beginn zu sehen, meiner Datei Ich habe diesen Kram, oder?
Das Rautenzeichen Ausrufezeichen.
Nun, werden Sie auch vielleicht feststellen, dass aus irgendeinem Grund,
Ich habe keine Syntax mehr hervorhebt,
und das ist, was ich spielte auf frühere, was war, dass, wenn ich meinen Dateinamen
.php, habe ich nicht den Nutzen Syntaxhervorhebung mehr.
Diese Datei wird gerade angerufen add3.
So dass ich es später laufen mit ./ add3 und nicht ./ add3.php.
>> Also die reason-- es ist immer noch fein, ist es immer noch gültig, PHP,
aber es ist nicht hervorgehoben Syntax, weil Diese Datei wird nicht aufgerufen something.php.
Das ist der einzige wirkliche Unterschied hier, plus den Kram.
Also mal sehen, was passiert, wenn Ich versuche, und führen Sie dieses Programm.
./ Add3, genau wie ich mit C. Bash.
./ Add3 Berechtigung verweigert.
Dies ist, was du gehst um zu sehen, wenn Sie vergessen,
um mit dem Befehl chmod ändern die Rechte der Datei.
>> Wie sich herausstellt, regelmäßige PHP Dateien können nicht einfach durchgeführt werden.
Sie können interpretiert werden, aber wir sind hier etwas ein wenig anders zu tun.
Wir Ausführung.
Und so muss ich die Erlaubnis hinzufügen der Ausführung, chmod a + x zu add3.
Dann kann ich ./ add3 sagen.
Bitte geben Sie mir eine Nummer.
5, 6.
Die Summe dieser beiden Zahlen ist 11.
>> In ähnlicher Weise habe ich schon chmoded dice2, so kann ich Sie einfach ./ dice2,
Sie rollte A 1 und A 1, die Sie rollte A 5 und A 4, und so weiter.
>> Also das ist so ziemlich das Idee von einem PHP-Syntax, nicht wahr?
Es gibt eine Menge, um durchzukommen, ich weiß.
Aber hoffentlich jetzt, dass PHP gesehen haben ist nicht wirklich so verschieden von C
und gibt uns wirklich die Fähigkeit die Dinge nehmen eine Kerbe oder zwei.
Wir wissen nicht wirklich Sorgen zu machen, zu viel about-- wir nicht wirklich
zu viel Sorgen zu machen die Details, die wir Low-Level-
musste mit C sorgen sich um, nicht wahr?
Wir können auf der höheren konzentrieren Ebene Zeug, dass PHP
ermöglicht es uns, zu tun und zu nehmen selbstverständlich, dass es für uns arbeiten.
Also es gibt uns die Möglichkeit, jetzt, Übergang von C, PHP,
In den Programmen, die viel mehr sind zu machen komplexe und vielleicht viel mehr robust.
>> So dass ich hoffe, dass Sie Spaß haben Arbeits mit PHP, und ich bin Doug Lloyd.
Dies ist CS50.