Follow

TIL:
In PHP ist ("310702E-3155" == "280702E-4526") true.

· · Web · 3 · 3 · 3

== castet automagisch, die beiden Strings werden als floats interpretiert, und da beide ungefähr 0,0 sind, sind sie gleich.

@mist Was macht

((string)"310702E-3155" == (string)"280702E-4526")

@moemoe
.-(~)-------------------(Fr 2. 14:35:49)-(mist)-
`--# php -r 'var_dump("310702E-3155" == "280702E-4526");'
bool(true)
.-(~)-------------------(Fr 2. 14:35:53)-(mist)-
`--# php -r 'var_dump((string)"310702E-3155" == (string)"280702E-4526");'
bool(true)
.-(~)-------------------(Fr 2. 14:35:55)-(mist)-
`--# php -r 'var_dump("310702E-3155" === "280702E-4526");'
bool(false)

@mist Wow, selbst mit expliziter Typangabe verkackt er es noch. === wäre auch mein nächster Vorschlag gewesen, das ist ja irgendwie meistens sowieso der geschicktere Weg.

@moemoe Naja, du machst die Typangabe an die Variable, nicht an den ==-Operator. Und == denkt halt Links ne Float, rechts ne Float, eindeutig floats vergleichen

@mist ah danke

irgendwie hat der post bei mir nicht gescheit föderiert deswegen hab ich ihn nicht gesehen

Sign in to participate in the conversation
chaos.social

chaos.social – a Fediverse instance for & by the Chaos community