SELFPHP

SELFPHP-Druckversion
Original Adresse dieser Seite:
http://www.selfphp.de/praxisbuch/praxisbuchseite.php?site=115&group=24
© 2001-2017 E-Mail SELFPHP OHG, info@selfphp.de
© 2005-2017 E-Mail PHP5 Praxisbuch - Matthias Kannengiesser, m.kannengiesser@selfphp.de


Gleichheitsoperatoren


Gleichheit

Der Operator (==) liefert true, wenn seine beiden Operanden gleich sind, sind sie ungleich, liefert er false. Die Operanden können beliebige Typen haben, aber die Definition von »gleich« hängt vom Typ ab.

Noch etwas sollten Sie berücksichtigen, normalerweise sind zwei Variablen nicht gleich, wenn sie verschiedene Typen haben. Da PHP aber bei Bedarf automatisch Datentypen umwandelt, ist dies nicht immer der Fall.

Beispiel

echo $pruefen = "1" == 1; // Ergebnis: true
echo $pruefen = true == 1; // Ergebnis: true
echo $pruefen = false == 0; // Ergebnis: true

Achtung: Beachten Sie, dass der Gleichheitsoperator (==) etwas ganz anderes als der Zuweisungsoperator (=) ist, auch wenn Sie im Deutschen beide oft einfach als »gleich« lesen. Es ist wichtig, diese beiden Operatoren zu unterscheiden und in jeder Situation jeweils den richtigen Operator zu verwenden.


Ungleichheit

Auch hier gilt, der Operator (!=) liefert true, wenn seine beiden Operanden ungleich sind, sind sie gleich, liefert er false. Die Operanden können beliebige Typen haben, wie beim Operator (==).

Beispiel

// Ungleichheit
$zahlEins = 999;
$zahlZwei = 99;
$pruefen = $zahlEins != $zahlZwei; // Ergebnis: true

Beispiel

// Initialisierung
$kundeEins = "Martin Klein";
$kundeZwei = "Fred Mustermann";

// Ergebnis: "Nicht identischer Kunde"
if ($kundeEins != $kundeZwei) {
  resultat = "Nicht identischer Kunde";
} else {
  resultat = "Identischer Kunde";
}

Hinweis: Eine alternative Schreibweise für Ungleichheit stellt der folgende Operator dar: <>


Strikte Gleichheit

Der Operator (===) funktioniert ähnlich wie der Gleichheitsoperator, führt jedoch keine Typumwandlung durch. Wenn zwei Operanden nicht denselben Typ aufweisen, gibt der strikte Gleichheitsoperator den Wert false zurück.

Beispiel

// Initialiserung
$preisBuchEins = 45.95;
$preisBuchZwei = "45.95";

// Ergebnis: "Ungleich"
if ($preisBuchEins === $preisBuchZwei) {
  $pruefen = "Gleich";
} else {
  $pruefen = "Ungleich";
}


Strikte Ungleichheit

Der Operator (!==) funktioniert genau umgekehrt wie der strikte Gleichheitsoperator.

Beispiel

// Initialiserung
$preisBuchEins = 45.95;
$preisBuchZwei = "45.95";

// Ergebnis: "Ungleich"
if ($preisBuchEins !== $preisBuchZwei) {
  $pruefen = "Ungleich";
} else {
  $pruefen = "Gleich";
}

Abschließend eine Übersicht über die Gleichheitsoperatoren in PHP.

OperatorBezeichnungBedeutung
==Gleichheit$a==$b ergibt true, wenn $a gleich $b ist.
===Strikte Gleichheit$a===$b ergibt true, wenn $a gleich $b ist vom gleichen Typ.
!=Ungleichheit$a!=$b ergibt true, wenn $a ungleich $b ist.
<>Ungleichheit$a!=$b ergibt true, wenn $a ungleich $b ist.
!==Strikte Ungleichheit$a!==$b ergibt true, wenn $a ungleich $b ist vom gleichen Typ.