Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Faculty of Computer Science Einführung in PHP 5. Allgemeines Allgemeines zu PHP –steht für PHP Hypertext Preprocessor –ist eine Skriptsprache –wird eingebettet.

Ähnliche Präsentationen


Präsentation zum Thema: "Faculty of Computer Science Einführung in PHP 5. Allgemeines Allgemeines zu PHP –steht für PHP Hypertext Preprocessor –ist eine Skriptsprache –wird eingebettet."—  Präsentation transkript:

1 Faculty of Computer Science Einführung in PHP 5

2 Allgemeines Allgemeines zu PHP –steht für PHP Hypertext Preprocessor –ist eine Skriptsprache –wird eingebettet in HTML –wird serverseitig verarbeitet –wird seit 1994 entwickelt, ist sehr beliebt –ist angelehnt an C, Java, und Perl –besitzt APIs zu sehr vielen DBS PHP ist verfügt über umfangreiche Dokumentation: –Homepage:http://www.php.net oder –Handbuch: Relevant für diese Folien: PHP 5

3 PHP-Code 4 verschiedene Möglichkeiten zur Einbettung in HTML (abhängig von der PHP-Konfiguration) … Kommentare innerhalb von PHP-Code Jede PHP-Anweisung muss mit Strichpunkt abgeschlossen werden!

4 Textausgabe Textausgabe mit print oder echo

5 Variablen in PHP beginnen Variable mit einem Dollarzeichen ( $ ), gefolgt vom Namen der Variablen. in PHP beginnen Variable mit einem Dollarzeichen ( $ ), gefolgt vom Namen der Variablen. Name muss entweder mit Buchstaben oder Underscore ( _ ) beginnen! Name muss entweder mit Buchstaben oder Underscore ( _ ) beginnen!

6 Variablen Es gibt verschiedene Typen von Variablen –Skalare Typen String Integer Float Boolean –Zusammengesetzte Typen Arrays Objekte

7 Arrays Arrays bestehen aus mehreren indizierten Elementen. "Normale" Arrays haben einen numerischen Index beginnend bei Null. Ergibt: Array ( [0] => 47 [1] => 11 [2] => 10 [3] => hallo )

8 Arrays Assoziative Arrays verwenden String- oder Integer-Indices, um beliebige Werte zu referenzieren: "Clint", "Nachname" => "Eastwood", "Alter" => 74); # formattierte Ausgabe: echo $star["Vorname"]. " ". $star["Nachname"]. " ist ". $star["Alter"]. " Jahre alt."; ?> Ergibt: Clint Eastwood ist 74 Jahre alt. Alternative Ausgabe: echo "{$star['Vorname']} {$star['Nachname']} ist {$star['Alter']} Jahre alt.";

10 Operatoren Arithmetische Operatoren

11 Operatoren Logische Operatoren Vergleichsoperatoren $b; # ungleich? $a <> $b; # ungleich? $a !== $b; # unident? $a !== $b; # unident? $a < $b; # kleiner? $a < $b; # kleiner? $a > $b; # grösser? $a > $b; # grösser? # kleiner oder gleich? # kleiner oder gleich? $a <= $b; $a <= $b; # grösser oder gleich? # grösser oder gleich? $a >= $b; $a >= $b;?>

12 Operatoren Zuweisungsoperatoren Zuweisungsoperatoren Es gibt noch viele weitere Operatoren, zu finden unter: Es gibt noch viele weitere Operatoren, zu finden unter:

13 Kontrollstrukturen Konstrollstrukturen sind wichtige Elemente einer Programmiersprache, da sie dynamische und variable Abläufe ermöglichen Konstrollstrukturen sind wichtige Elemente einer Programmiersprache, da sie dynamische und variable Abläufe ermöglichen PHP kennt u.a. folgende Kontrollstrukturen: PHP kennt u.a. folgende Kontrollstrukturen: –if, elseif, else –while, do –for, foreach –break, continue –switch –include

14 if, elseif, else if, elseif, else werden für Abfrageverzweigungen verwendet if, elseif, else werden für Abfrageverzweigungen verwendet if und elseif evaluieren beliebige nicht-leere Ausdrücke zu TRUE oder FALSE if und elseif evaluieren beliebige nicht-leere Ausdrücke zu TRUE oder FALSE= 0 && $a < 10) { /* wenn $a gleich 8 oder gleich 9, wird dieser Block ausgeführt */ } elseif ($a == "Text") { /* dieser Block wird ausgeführt, wenn $a grösser oder gleich 11. Nach der Prüfung wird $a inkrementiert */ } else { /* dieser Block, falls alle die anderen Bedingungen nicht erfüllt sind */ } ?>

15 switch wenn eine Variable auf mehrere Werte geprüft wird, so empfiehlt sich ein switch-Statement wenn eine Variable auf mehrere Werte geprüft wird, so empfiehlt sich ein switch-Statement case : Prüfwert case : Prüfwert break : Tritt aus dem switch-Block aus break : Tritt aus dem switch-Block aus default : Anweisung(en), die ausgeführt werden, falls kein case zutrifft. default : Anweisung(en), die ausgeführt werden, falls kein case zutrifft.

16 while, do while-Schleifen werden solange durchlaufen, bis der Kontrollausdruck zu FALSE evaluiert while-Schleifen werden solange durchlaufen, bis der Kontrollausdruck zu FALSE evaluiert Gibt 10 mal den Text aus Gibt ebenfalls 10 mal den Text aus

17 for for-Schleifen sind etwas komplexer, da sie 3 (optionale) Ausdrücke beinhalten: Initialisierung: wird bei Schleifeneintritt einmalig ausgeführt Kontrollbedingung: Schleife bricht ab, wenn diese Bedingung zu FALSE evaluiert Anweisung, die am Ende jedes Durchlaufs ausgeführt wird

18 foreach foreach ist ein Konstrukt zum bequemen Durchlaufen von Arrays foreach ist ein Konstrukt zum bequemen Durchlaufen von Arrays $v) { echo "Schlüssel $k hat Wert $v"; } ?>

19 Weitere In Schleifen kann man die Abarbeitung beinflussen: break : Veranlasst den sofortigen Austritt aus der Schleife continue : erzwingt sofort den nächsten Durchlauf, ohne die restlichen Statements der Schleife auszuführen. Um andere Dateien einzubinden: Der Code einer eingebundenen Datei wird an die Stelle des include- Statements gesetzt

20 Funktionen Häufig benutzte Anweisungssequenzen kann man in eine Funktion verpacken: Eine Funktion hat also einen Namen, eine Liste von Parametern, und optional einen Rückgabewert

21 Exception Handling Ausnahmefehler (Exceptions) können erzeugt und abgefangen werden Ausnahmefehler (Exceptions) können erzeugt und abgefangen werden Es gibt eine vordefinierte Fehlerklasse: Exception. Von dieser können benutzerdefinierte Fehlerklassen abgeleitet werden Es gibt eine vordefinierte Fehlerklasse: Exception. Von dieser können benutzerdefinierte Fehlerklassen abgeleitet werden Zu einem try -Block kann es mehrere catch -Blöcke geben Zu einem try -Block kann es mehrere catch -Blöcke geben getMessage(); }?>

22 Web-Formulare Web-Formulare sind die beliebteste Form der Benutzerinteraktion auf Webseiten Web-Formulare sind die beliebteste Form der Benutzerinteraktion auf Webseiten Die Frage ist: Wie kann man Benutzereingaben in PHP verarbeiten? Die Frage ist: Wie kann man Benutzereingaben in PHP verarbeiten? –Antwort: Die Benutzereingaben werden dem PHP-Skript als HTTP-Post- oder HTTP-Get-Variablen zur Verfügung gestellt (beide Mechanismen sind Teil des HTTP Protokolls) –$_POST und $_GET sind vordefinierte assoziative Arrays! Detaillierte Infos zu allen PHP und Formularen: und Detaillierte Infos zu allen PHP und Formularen: und

23 Web-Formulare Formular definieren in der Datei form.php : Formular definieren in der Datei form.php : Beim ersten Aufruf im Browser wird das Formular dargestellt: Beim ersten Aufruf im Browser wird das Formular dargestellt: Nach drücken auf "Abschicken!" wird die Ausgabe dargestellt, weil isset(...) zu TRUE evaluiert Nach drücken auf "Abschicken!" wird die Ausgabe dargestellt, weil isset(...) zu TRUE evaluiert

24 PHP Links Homepage: oder besser (weil schneller) Homepage: oder besser (weil schneller) Ein einfaches Tutorial gibts dort auch: Ein einfaches Tutorial gibts dort auch: Eine gute Einführung als PDF gibts von Team ThinkPHP: Eine gute Einführung als PDF gibts von Team ThinkPHP:

25 PHP Objekt-Orientierung (OO) PHP 5 bietet volle Unterstützung für Objektorientierung korb = Array(); $this->korb = Array();} public function add($item) { array_push($this->korb,$item) array_push($this->korb,$item)} public function addGeschenk() { $this->add("Geschenk"); $this->add("Geschenk");}}?>

26 PHP OO: Klassen Klassen werden mit dem class Schlüsselwort deklariert Klassen werden mit dem class Schlüsselwort deklariert $korb deklariert eine private Instanzvariable $korb deklariert eine private Instanzvariable Man kann auf public Instanzvariablen/methoden mit $this-> zugreifen. Man kann auf public Instanzvariablen/methoden mit $this-> zugreifen. __construct() ist der Konstruktor __construct() ist der Konstruktor Sichbarkeitsebenen sind wie üblich private, protected, public. Default ist public Sichbarkeitsebenen sind wie üblich private, protected, public. Default ist public Die Klasse kann nun wie folgt verwendet werden: $meinkorb = new Warenkorb(); $meinkorb->add("Buch"); $meinkorb->addGeschenk(); print_r($meinkorb);

27 PHP OO: Vererbung Einfache Vererbung ist möglich Einfache Vererbung ist möglichperson = $person; $this->person = $person;} function __destruct() { // Destruktor... // Destruktor...} public function getPerson() { public function getPerson() { return $this->person; return $this->person; }}?> Beachte: Beachte: –Konstructor der Oberklasse muss von Hand aufgerufen werden! –Standardwert kann bei Methoden für Eingangsparameter angegeben werden! –Alle methoden sind virtual

28 PHP OO: Interfaces (Mehrfache) Interfacevererbung ist möglich (Mehrfache) Interfacevererbung ist möglichschreiben("test.txt", "Hallo"); ?> Beachte: Beachte: –Interfaces haben keine Variable und nur public Methoden –Eine Klasse die ein Interface implementiert muss alle Methoden des Interface implementieren

29 PHP OO: Statische/Konstante Member Statische Methoden und Variablen Statische Methoden und Variablen Beachte: Beachte: –Scope Resolution Operator "::" –Superklasse wird über parent angesprochen –Aktuelle Klasse wird über self angesprochen

30 PHP OO: Weitere Konzepte PHP 5 unterstützt Reflexion PHP 5 unterstützt Reflexion Serialisierung über __sleep() und __wakeup() Serialisierung über __sleep() und __wakeup() Klonen von Objekten mit __clone() Klonen von Objekten mit __clone() Weiteres zu PHP OO:


Herunterladen ppt "Faculty of Computer Science Einführung in PHP 5. Allgemeines Allgemeines zu PHP –steht für PHP Hypertext Preprocessor –ist eine Skriptsprache –wird eingebettet."

Ähnliche Präsentationen


Google-Anzeigen