Frage von MinecrafterPG, 13

Wie kann ich diese if!isset $a or!isset $b Abfrage richtig machen?

Hi Leute,

ich habe ein kleines Problem, ich will nämlich testen, ob eine der beiden Variablen NICHT existiert.

Also wäre das folgendes, oder?

if(!isset($_GET['bla'] or $_SESSION['bla']))

Nein, falsch gedacht:

Fatal error: Cannot use isset() on the result of an expression (you can use "null !== expression" instead)

Was ist hier los??? =D

Antwort
von WhiteGandalf, 8

Sieh genau hin, was die Fehlermeldung Dir gemeldet hat. Sie sagt die Wahrheit.

Du hast etwas anderes im Programmschnipsel zu stehen als Du schöngeistig-umgangssprachlich beschrieben hast.

Umgangssprachlich hast Du davon geredet, dass Du die Nicht-Existenz "DER BEIDEN Variablen" prüfen wollen würdest. Programmiert hast Du, dass Du die Nicht-Existenz eines Ausdrucks, der aus den beiden Variablen entsteht, prüfen willst. Das letztere geht aber nicht bzw. wäre Blödsinn: Ein Ausdruck - mit anderen Worten: das Ergebnis einer Operation - existiert natürlich selbstredend IMMER. Sofern die Operation ausgeführt wird. Und das wird sie, nimm Gift drauf. Eine PRÜFUNG auf die Existenz des Operations-Ergebnisses ist also immer überflüssig.

Also gehe nochmal in Dich und überlege ganz genau, WAS Du eigentlich willst, und programmiere dann auch tatsächlich so, wie Du das Programm eigentlich verhalten lassen willst!

Keine passende Antwort gefunden?

Fragen Sie die Community

Weitere Fragen mit Antworten