Was ist der Unterschied $var === true und $var !== false
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
-
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Logischerweise sind beide identisch. Wenn du nun aber deinen PHP-Code auf Perfomance optimierst ist
$var === true
in der Ausführung schneller als
$var !== false
Ansonsten wie geschrieben in einer Bedingung sind beide das gleiche.
Edit: Denkfehler !!!!
Diese Bedingung
$var !== false
kann nicht nur true sein sondern auch
"String" 1
Während die erste Bedingung nur true sein darf.
Gruß S.Brosch
Beitrag zuletzt geändert: 22.5.2012 13:18:21 von software-brosch -
Ich würde mal sagen nirgendwo.
php.net - Vergleichsoperatoren
ist einfacher zu lesen.$var === true
BTW. Das sieht mir aber nicht nach Basic aus, sondern eher nach PHP
Grüße
marmota
Beitrag zuletzt geändert: 22.5.2012 13:24:46 von marmota -
Ist denk ich mal auch PHP.
Die drei Vergleicherzeichen bedeuten, dass auch auf Typengleichheit geprüft wird. So prüfst du mit $foo === true , ob die Variable Boolean ist, und gleichzeitig true ist. Mit $foo !== false prüfst du, ob die Variable nicht den boolschen Wert false hat, sondern einen davon unterschiedlichen. Dabei würden auch 0, 42, NULL, 03.14159265 oder "vanilla Katzeneis ist aus meinem Schuh gefallen" ein true ergeben.
Wenn du als wirklich ein true haben willst, einen boolschen Wert, dann solltest du es auch unbedingt mit $foo === true prüfen.
Liebe Grüße -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage