Ok, also habe ich gerade etwas seltsames Verhalten mit PHP realisiert und würde gerne wissen, warum das passiert. So läuft diesen Code:PHP ternäre Anweisung mit 'und'
var_dump(true and false ? 'one' : 'two');
Ausgänge
boolean true
anstelle von 'zwei', wie man erwarten würde ... Das Problem scheint zu sein mit 'und'.
Running:
var_dump(true && false ? 'one' : 'two');
Ausgänge
string 'two' (length=3)
wie erwartet. Warum verursacht die Verwendung von 'und' anstelle von '& &' dieses seltsame Verhalten? Sollen sie nicht gleich sein?
Ich würde gerne die Antwort darauf wissen. Meine Vermutung ist die Reihenfolge .. In der ersten, wird falsch für den ternären Operator verwendet, der zu wahr und 'zwei', die als wahr auswertet ... – DanRedux
Sieht aus wie ich Recht hatte. : P – DanRedux