if() Abfragen

in PHP · Autor: Sebastian Fuchs

Falls du bereits einige Scripte im Internet durchgeschaut hast, wird dir sicherlich immer wieder ein if aufgefallen sein. Wenn nicht, ist es auch nicht schlimm. Denn entweder wirst du noch irgendwann auf ein solches if stoßen oder es sogar für deine eigenen Scripte benötigen.
Beginnen wir erst mal mit dem Sinn. if ist wie alles in PHP natürlich Englisch und bedeutet "wenn" bzw. "falls". Die
Übersetzung bringt uns also schonmal sehr viel weiter. Denn mit diesem if kann man prüfen, ob eine bestimmte Bedingung oder Funktion erfüllt ist.
Dazu ein einfaches Beispiel:
<?php

$name = 'Max';

if($name == 'Max')
{
  echo 'Der Name ist '.$name;
}

?>
Im Beispiel wurde zunächst die Variable $name definiert und dann über ein if geprüft, ob diese Variable gleich "Max" ist. Dazu wurde ein logisches gleich ("==") verwendet. Da der Name ja vorher als "Max" definiert wurde, ist die Überprüfung erfolgreich. Deshalb wird der Quelltext zwischen den geschweiften Klammern ausgeführt. Im Beispiel ist dies eine Ausgabe.
Das if hat aber auch noch einen "Partner". Dieser heißt else, was übersetzt "andernfalls" oder "sonst" bedeutet. Man kann sich also denken, wozu das else da ist.
Ein else steht immer nach der geschlossenen Klammer von einem if und gibt an, was passiert, wenn die if-Überprüfung nicht erfüllt wurde. Es ist aber nicht zwingend notwendig, nach jedem if einen else-Teil zu schreiben. Man kann auch alleinstehende if-Abfragen schreiben.
Jetzt aber ein Beispiel für einen else-Teil. Dazu wird einfach das Beispiel von vorhin erweitert:
<?php

$name = 'Martin';

if($name == 'Max')
{
  echo 'Der Name ist '.$name;
}
else
{
  echo 'Der Name ist nicht Max, sondern '.$name;
}

?>
Wie schon vorhin wird ein Name festgelegt, der diesmal aber "Martin" ist. Danach wird wieder geprüft, ob der Name "Max" ist. Da dies nicht der Fall ist, wird auf den else-Teil ausgewichen.
Hier wird dann eine Art Fehlermeldung ausgegeben.
Soweit zum Prinzip von if und else. Zum Schluss liste ich noch Anwendungsbereiche für das Programmieren mit solchen Abfragen auf.
Eine Möglichkeit ist die Anwendung in Formularen, die im gleichen Dokument ausgewertet werden. Damit die Verarbeitung der Werte nicht schon vor dem Abschicken des Formulars über den jeweiligen Button stattfindet, kann man mit if prüfen, ob der Submit-Button geklickt wurde.
Dazu wird über die Funktion isset() einfach geprüft, ob die entsprechende Variable existiert.
<?php

[...]
if(isset($_POST['abschicken']))
{
  // auszuführende Aktion
}
[...]

?>
Alles was dann innerhalb der geschweiften Klammer unserer if-Abfrage steht, wird erst nach dem Klicken des Submit-Buttons ausgeführt. Dies ist auch ein Beispiel, wo nicht zwingend ein else benötigt wird.
Eine weitere Mäglichkeit zur Anwendung einer Abfrage ist die Gegenüberstellung von Variablen. Das ist ähnlich wie in unserem ersten Beispiel, in dem die Variable mit dem Namen verglichen wurde. Das ganze kann man natürlich auch noch etwas komplexer machen.
<?php

[...]
if(($name == 'Max') || ($name == 'Alex') || ($name == 'Simon'))
{
  // auszuführende Aktion
}
[...]

?>
In meinem Beispiel wird geprüft, ob der Name "Max", "Alex" oder "Simon" ist. Dazu wird das Zeichen || verwendet, das man in PHP als logisches oder verwendet. Weitere Operatoren findest du in der PHP Befehlsreferenz.
Jetzt noch ein letztes Beispiel. Hiermit kannst du prüfen, ob zum Beispiel ein <input>-Feld nach dem Abschicken eines Formulars leer ist. Das ganze kann man zum Beispiel verwenden, wenn man überprüfen möchte, ob der Benutzer alle Felder eines Kontaktformulars ausgefüllt hat.
<?php

[...]
if(empty($_POST['email']))
{
  echo 'Es wurde keine Email angegeben!';
}
[...]

?>
Mit der Funktion empty() wird überprüft, ob die angegebene Variable leer ist. Da das bei einem nicht ausgefüllten <input>-Feld der Fall ist, könnte man dann zum Beispiel eine Fehlermeldung ausgeben lassen.

· zurück zu "PHP Tutorials"

Lesezeichen

Diese Seite zu Mister Wong hinzufügen Diese Seite zu del.icio.us hinzufügen Diese Seite bei YiGG hinzufügen Diese Seite bei LinkARENA hinzufügen Diese Seite zu alltagz hinzufügen Diese Seite bei iGoogle hinzufügen