Skip to the content.

Einführung PHP

PHP ist eine Skriptsprache. Ein PHP Interpreter (Übersetzer) verarbeitet PHP Code zu HTML welches im Browser dargestellt wird. Hierdurch kann eine dynamische Seite erstellt werden deren HTML Code programmatisch oder durch Benutzereingaben angepasst werden kann. Im Gegensatz zu reinem HTML Code wird ein PHP Interpreter Dienst benötigt um der HTML Code zu generieren. HTML Dateien können direkt mit dem Browser geöffnet werden, PHP Dateien werden von einem Server bereit gestellt. PHP Dateien haben die Endung php z.B. index.php.

PHP Code

PHP Code steht innerhalb <?php und ?> außerhalb des PHP Codes kann HTMl Code stehen. Um die Ausgabe von PHP anzuzeigen wird die Funktion print verwendet, Text (String) steht in Anführungszeichen und jede Anweisung muß mit einem Semikolon ; abgeschlossen werden. Kommentare stehen hinter # oder zwischen /* und */.

<?php
  print "Hello World!"; # Gibt 'Hello World!' aus.
?>

PHP kann HTMl Code direkt mit ausgeben:

<?php
  print "<h2>Hello World!</h2>"; # Gibt '<h2>Hello World!</h2>' aus.
?>

oder der HTML Code steht außerhalb des PHP Codes.

<h2>
<?php
  print "Hello World!";
?>
</h2>

Variablen

Variablen beginnen mit einem $ und ihnen wird mit einem Gleichheitszeichen ein Wert zugewiesen.

<?php
  $text = "Hello World!";
  print $text; # Gibt 'Hello World!' aus.
?>

String Varibalen können mit anderen Strings (oder Variablen) über einen Punkt zu einem String verbunden werden.

<?php
  $text = "Hello World!";
  print "<h2>" . $text . "</h2>"; # Gibt '<h2>Hello World!</h2>' aus.
?>

Typen von Variablen

Variablen können von unterschiedlichem Typ sein.

Typen können ineinander umgewandelt werden, mit Typecasting. Das ist z.B. sinnvoll um einen String “3445” in eine Zahl 3445 umzuwandeln, mit dem String “3445” kann nicht gerechnet werde, mit der Zahl 3445 schon. In den meisten Fällen erledigt PHP dies allerdings automatisch. Beim Typcasten wird der Variablen der neue Typ in Klammern vorangestellt. Beispiel

$string = "3445";
$int = (int) $string; # Hier wird die String "3445" in eine Zahl umgewandelt
$ergebnis = $int + 400;

NULL sollte nicht getypcasted werden, um eine Variable zu löschen wird unset($variable) verwendet.

Merke: Der String "" ist nicht NULL sondern leer empty. 0 oder false gelten in diesem Zusammenhang auch als leer.

Operatoren

Merke: Um zu einer Zahl $zahl einen Wert hinzuzuaddieren wird aufgrund der besonderen Eigenschaft des Gleichheitszeichens folgende Syntax verwendet $zahl = $zahl + 5. Wird eine Zahl um 1 erhöt, kann die Kurzform $zahl++ verwendet werden.

if - Überprüfung

Bedingte Anweisungen werden mit dem Schlüsselwort if eingeleitet. Der darauf folgende Ausdruck in runden Klammern, die Bedingung, wird logisch überprüft.

Hinweis: ifelse und else sind nicht notwendig.

Beispiel

<?php
  $a = 5;
  $b = 7;
  if ($a > $b) {
    print $a . 'ist größer als' . $b;
  }
  elseif ($a == $b) {
    print $a . 'und' . $b . 'sind gleich';
  }
  else {
    print $a . 'ist kleiner als ' . $b;
  }
?>

if - Bedingungen können auch verschachtelt werden, soll der obere Code nur ausgeführt werden wenn a und b Zahlen sind is_numeric(), würde dies so aussehen:

<?php
  $a = 5;
  $b = 7;
  if (is_numeric($a) && is_numeric($b)) {
    if ($a > $b) {
      ...
    }
   }
?>

Ob eine Varable existiert (nicht NULL ist), kann mit isset() überprüft werden, ob sie leer ("", 0, false) ist mit empty(). Ein vorangestelltes ! negiert die Aussage:

for - Schleife

Mit for-Schleifen wird ein Ausdruck bis zu einem Abbruchkriterium wiederholt. Die Anweisungen für die for-Schleife bestehen aus drei Ausdrücken

for (Start; Überprüfung; Durchführung) {
    ...
}

Beispiel für die Ausgabe der Zahlen 1 bis 10

<?php
 for ($i = 1; $i <= 10; $i++) {
     print $i;
 }
?>

Für zusätzliche Abbruchkriterien kann die Anweisung break innerhalb einer for-Schleife verwendet werden. Die Schleift läst sich dann ganz ohne die drei Ausdrücke schreiben:

<?php
  $i = 1;
  for (;;) {
    if ($i <= 10 ) {
      break;
    }
    print $i;
    $i++;
 }
?>

Merke: Eine for-Schleife muss immer ein Abbruchkriterium haben, ansonsten läuft die Schleife so lange bis die Ressourcen des Rechners erschöpft sind.