phpbar.de logo

Mailinglisten-Archive

[php] Was bedeutet === ?

[php] Was bedeutet === ?

Roland Tapken php_(at)_phpcenter.de
Sat, 19 Oct 2002 17:25:48 +0200


Hi!

> > == gleich === identisch und vom gleichen typ
> 
> Warum?

Beispiel:

$a = 1;   // Integer
$b = "1"; // String

$a == $b würde true liefern (sollte jedenfalls, ich habs jetzt nich
getestet). $a === $b liefert false, weil zwar beide den Wert 1 haben,
aber sich vom Typ unterscheiden.

Praktischer Einsatz:
Du hast eine Funktion, die irgendeinen Wert aus einer Datenbank ausliest
und zurückliefert. Dieser Wert DARF im diesem Beispiel auch 0 sein. Nun
gibt es in der Datenbank den abgefragten Datensatz aber nicht. Wie
teilst du das deiner Software mit? Indem du in diesem Fall FALSE
zurücklieferst, also ein Ergebnis vom Typ boolean.

function getWert($id) {
  $db = new database; // z.B. PHPlib-Datenbankklasse
  $db->query('SELECT `wert` FROM `tabelle` WHERE
              `id`="'.addSlashes($id).'"');
  if ($db->next_record()) {
      return $db->f('wert');
  } else {
      return FALSE;
  }
}

if (FALSE === ($wert = getWert(17))) {
    die ("Fehler, der Datensatz 17 exestiert nicht").
}
echo "Der Datensatz hat den Wert $wert.";


cu, Roland Tapken
-- 
Please reply to:  tapken_(at)_engter.de
> I spent a minute looking at my own code by accident.
> I was thinking "What the hell is this guy doing?"


php::bar PHP Wiki   -   Listenarchive