I just tested these out out of curiosity.
0==“text” returns false in PHP 8.2 as I’d expect.
The others make sense in the way that php juggles between types. An empty variable can type-juggle to null, but an array can’t be directly compared with a string.
(Although you wouldn’t really want to compare an array with a string, PHP just treats an array as greater than other variables. So weirdly, ([] > “”) == true.)
If you’re trying to directly compare different variable types in any language without strong typing, you’re going to have edge-case results which you might not expect.
My “coding like a moron” message still stands. PHP isn’t a strongly typed language and it doesn’t tell you off for trying stupid stuff like comparing a string with an int. Nor do other languages like JavaScript.
“php doesn’t stop me from coding like a moron, therefore php sucks”
Love the guitar solo on this one. Just noticed the new album is out today!
He’s carting these huge fucking antlers around on a national tour just for the lamest of lame puns. He must have workshopped this “gag” and miraculously not died on his arse, for him to decide it’s worth hauling the antlers around. Baffling.