Rato Micefarmer: Keine leeren Formulareingaben

Beitrag lesen

Wieso ergibt $_POST['eingabe']!=="" bei einem leeren String true?

Bei '===' als Vergleichsoperator liefert nur dann TRUE, wenn die beiden verglichenen Werte den selben Wert haben und der selbe Variablentyp sind. Z.B.: '"eins" === "eins"' liefert TRUE, aber '"1" === 1' liefert FALSE, da der erste Wert ein String und der zweite Integer ist, also nicht vom selben Variablentyp wie der erste. Wenn der User ein Formularfeld leerläßt, so wird es von PHP vielleicht nicht als leerer String, sondern als anderer Variablentyp interpretiert. Wenn du es dann mit einem leeren String vegleicht, liefert es somit FALSE, und bei '!==' TRUE, da dies ja nur die Negierung von '===' ist.

mfg
Rato

--
§§§
Meine Postings basieren lediglich auf mein Wissen und können völliger Blödsinn sein.
§§§