gewünschtes Resultat: Ausführen, wenn $var nicht leer ist
PHP
$var = 0;
echo ($var != '' and $var !== false)
?'bedingung wahr'
:'bedingung nicht wahr';
// bedingung nicht wahr
Alles anzeigen
Warum bekommt man als Ergebnis "bedingung nicht wahr"?
Weil != nicht auf den Typ prüft. Daher ist '' und 0 gleich leer.
!== dagegen prüft auch den Typ. Und 0 ist nicht '' (int ist nicht str).
Kann man schon mal drauf rein fallen =)