Php Schulung

22
PHP PHP Schulung Christian Münch netz98 new media GmbH 07.01.2008

Transcript of Php Schulung

Page 1: Php Schulung

PHP

PHP Schulung

Christian Münchnetz98 new media GmbH

07.01.2008

Page 2: Php Schulung

Was i s t e ine P rogrammiersprache?

● Von einer Programmiersprache spricht man (vereinfacht ausgedrückt), wenn eine bestimmte Aufgabe durch eine Abfolge von Befehlen gelöst wird

● Ist HTML eine Programmiersprache?

Page 3: Php Schulung

Gesch ichte

● 1954 Fortran

● 1958 Algol

● 1959 Lisp

● 1960 Cobol

● 1965 Basic

● 1972 C

● 1983 C++

● 1987 SQL, Perl

● 1993 Ruby

● 1995 Java

● 1997 PHP / JavaScript

● 2000 C#

Page 4: Php Schulung

Sprachgenera t ionen

● 1. Generation: Maschinensprache– 1/0 Bits...

● 2. Generation: Assembler– Für bestimmte Prozessoren

● 3. Generation: Hochsprachen– C, C++, Visual Basic, Pascal

● 4. Generation: Spezialsprachen– SQL, ABAP, SAS

Page 5: Php Schulung

Programmiers t i l

● Einrückung von untergeordneten Programmelementen (Einrückungsstil)

● Positionierung umschließender Syntaxelemente wie {}, [], (), BEGIN, END

● Einsatz von Leerzeichen und Leerzeilen

● Einsatz von Kommentaren

● Namenskonventionen für Symbole

● Reihenfolge der Deklaration von Symbolen

● Länge und Umfang von Symbolen

● Verschachtelungstiefe untergeordneter Programmelemente

Page 6: Php Schulung

PHP Tags

● <?php code ?>● <? code ?>● <% code %>● <script language="php"> code </script>● <?= $variable; ?>● <%= $variable; %>

Page 7: Php Schulung

Kommentare

<?php print "Einzeilig, C++.\n"; // bis zum Zeilenende print "Einzeilig, Unix Shell.\n"; # bis zum Zeilenende

/* Alles Zeilen bis zum nächsten Auftreten der Zeichenkombination Sternchen und Slash sind Bestandteil des Kommentars. */print "Mehrzeilig, wie aus C bekannt.\n";

?>

Page 8: Php Schulung

Typ is ie rung

● Angabe einer konkreten Spezifikation zur Datenhaltung

● Definition von Daten oder Datenstrukturen = Datentyp– Typisierte Sprachen: z.B. C++ oder Java– Typenlose Sprachen: z.B. JavaScript

● Wofür?– Der Effizienz der Programme,

– Der Entlastung des Programmautors

– Der Typsicherheit, d.h. dem Schutz des Programmierers

Page 9: Php Schulung

Datentypen in PHP

● Einfache Datentypen / Skalare– Integer– Float (Double)– Boolean– String

● Zusammengesetzte Typen– Array– Objekt

● Spezielle Typen in PHP– NULL, Resource ID

Page 10: Php Schulung

Ska la re Datentypen

● Integers in PHP entsprechen dem Datentyp long in C. Auf einer 32-Bit Maschine entspricht dies: -2.147.482.648 bis +2.147.482.647

● Bei einem Überlauf wandelt PHP den Typ automatisch nach Float.

Page 11: Php Schulung

Zusammengesetz te Datentypen

● Arrays (Hashes)– keine Dimensionierung notwendig– dynamisches Wachstum– beliebige Datentypen als Key und als Value– mehrdimensional– Auto-Index Funktionalität

Page 12: Php Schulung

Var iab len (Typen)

● Global, Superglobal– $GLOBALS, – $_SESSION– $_SERVER– $_GET– $_POST– $_REQUEST

● Lokal– selbstdefinierte Variablen: z.B. $myVar

Page 13: Php Schulung

Var iab len

● Speicher wird automatisch bereitgestellt und beim beenden des Scripts freigegeben.

● Der Speicher kann mit “unset” direkt freigegeben werden.

● Ein Variablenname beginnt mit einem Dollarzeichen ($) gefolgt von einem Unterstrich (_) oder einem Buchstaben, gefolgt von einer beliebigen Anzahl alphanumerischer Zeichen (u. Unterstrich).

● Die Bezeichner sind case-sensitiv

Page 14: Php Schulung

Kons tanten

● Definiert mit define Funktion– z.B. define(“MY_CONST”, 1);

● Immer groß schreiben!● Können nicht mehr geändert werden.

Page 15: Php Schulung

Var iab le Var iab len

// ${} Syntax für eine klare Namensbindung$name = "variable_value";${$name} = "Hello ";echo $variable_value;

// Alternative Syntax$$name = "World!";echo $variable_value . "\n";

Page 16: Php Schulung

Opera to ren

● Ausdrücke– ., +, -, *, /, %, &, |, ~– +=, .=, -=, *=, /=, %=, &=, |=– <, <=, ==, ===, =>, $gt;, !=– * $v++, ++$v, $v--, --$v;

● Logische Verknüpfungen– && vs. and– || vs. or

Page 17: Php Schulung

Opera to ren – Fü r was?

● Kombinieren und manipulieren von Konstanten und Variablen

● Können eine unterschiedliche Wertigkeit (precedence) haben.

Page 18: Php Schulung

Zuwe isungsopera to r

1. $a = 10;

2. $c = “Hallo Welt”;

3. $test = false;

4. $a = $b

5. $a = $b = 29;

6. $a = &$b;

Page 19: Php Schulung

Ar i thmet i sche Opera to ren

● Addition (+)● Substraktion (-)● Multiplikation (*)● Division (/)● Modulo (%)

Page 20: Php Schulung

Be isp ie le fü r A r i thmeth i sche Opera to ren

1. 5 + 10

2. 2 * $a

3. 5 + 6 * 2

4. 2 % 2

5. $a = 2; $b = &$a; $b = 3; $c = $a * $b;

Page 21: Php Schulung

Ar i thmet i sche Opera to ren – Was i s t zu beachten?

● Der Modulo Operator verhält sich anders als im Mathemtikuntericht gelernt.– Es wird auch ein negativer Wert

zurückgeliefert● Die Reihenfolge ist zu beachten● Nötigenfalls Klammern setzen

– 5 + 6 * 2 ist nicht (5 + 6) * 2

Page 22: Php Schulung

Spez ie l l e Verwendung von Opera to ren

1. $a++

2. ++$a

3. $c += 2;

4. $d *= 2;

5. $e -= 2;

6. $a = 1; $b = $a++ + 1; echo $a; echo $b;

7. $a = 1; $b = ++$a + 1; echo $a; echo $b;