M
Mr. Snoot
Gast
Hio,
ja, wie der Titel schon sagt: wieso ist eine Prüfung mit !== false nicht das gleiche wie === true.
Im ersten Fall prüfe ich, ob etwas nicht falsch ist. Das ist doch dasselbe wie wenn ich prüfe, ob etwas richtig ist. Oder nicht?
Jedenfalls wird in den Beispielen, die ich bisher mit diesem Operator gesehen habe (zu den verschiedensten Themen), immer auf !== false zurückgegriffen. Und genau das liefert bei mir auch das, was ich will. Prüft man dagegen mit === true, dann kanns passieren, dass die Prüfung ein falsches Ergebnis liefert.
Prüfe ich bspw. mit strpos auf ein Zeichen in einem String, dann liefert mir !== false das richtige Ergebnis, === true dagegen nicht.
ja, wie der Titel schon sagt: wieso ist eine Prüfung mit !== false nicht das gleiche wie === true.
Im ersten Fall prüfe ich, ob etwas nicht falsch ist. Das ist doch dasselbe wie wenn ich prüfe, ob etwas richtig ist. Oder nicht?
Jedenfalls wird in den Beispielen, die ich bisher mit diesem Operator gesehen habe (zu den verschiedensten Themen), immer auf !== false zurückgegriffen. Und genau das liefert bei mir auch das, was ich will. Prüft man dagegen mit === true, dann kanns passieren, dass die Prüfung ein falsches Ergebnis liefert.
Prüfe ich bspw. mit strpos auf ein Zeichen in einem String, dann liefert mir !== false das richtige Ergebnis, === true dagegen nicht.
PHP:
<?php
$str = asdfgh;
echo strpos($str,"a") !== false ? "kommt vor" : "kommt nicht vor"; // findet das a in $str
echo strpos($str,"a") === true ? "kommt vor" : "kommt nicht vor"; // findet kein a in $str
?>
Zuletzt bearbeitet: