Problem
Consider the code. What will be returned as a result?
$something = 0;
echo ('password123' == $something) ? 'true' : 'false';
The answer is true
. You should never use ==
for string comparison. Even if you are comparing strings to strings, PHP will implicitly cast them to floats and do a numerical comparison if they appear numerical. ===
is OK.
For example
'1e3' == '1000' // true
also returns true.