269 Tipps rss | 8 Nutzer online

PHP: Drei Gleichheitszeichen für mehr Sicherheit

Vergleiche in PHP erledigen Sie in der Regel mit zwei hintereinander gestellten Gleichheitszeichen, also

if ($intWert == 0)

Doch PHP ist nicht typensicher. Was, wenn Sie zum Beispiel

if ($bFlag == true)

einsetzen? Dann trifft die Bedingung zu, falls $bFlag true ist oder falls der Wert der Variablen 1 ist. Letzteres kann zu unerwünschten Problemen und schier endloser Fehlersuche führen. Oder probieren Sie es einmal damit:

if ("Hallo Welt" == 0)

Die Bedingung trifft zu, weil die beiden =-Zeichen den String "Hallo Welt" in einen Integer konvertieren. Und der hat den Wert 0. Das gleiche passiert natürlich auch, wenn eine Variable einen String enthält und mit 0 verglichen wird.

Um solche Fehlerquellen auszuschließen, sollten Sie an kritischen Punkten drei statt zwei Gleichheitszeichen verwenden. Dann nämlich werden nicht nur Werte, sondern auch Typen verglichen. Mit === trifft

if ($bFlag === true)

auch wirklich nur dann zu, wenn der Wert true ist.

Add to Del.icio.us


Bedingungen für die Kommentareingabe
Hinweis



Ihr Kommentar:


Name:


Copyright © Der Strassenprogrammierer 1999-2012   | Tippscout 5.0
Zurück Tipps Startseite