...
The ==
operator first converts its arguments into numbers by extracting digits from the front of each argument (along with a preceding +
or -
). Nonnumeric data in an argument is ignored, and the number consists of whatever digits were extracted. A string such as "goodpass"
has no leading digits and , so it is thus converted to the numeral 0. Consequently, unless either $password
or $correct
contains leading digits, they will both be converted to 0 and will be considered equivalent.
...
Tool | Diagnostic |
---|---|
Perl::Critic | ValuesAndExpressions::ProhibitMismatchedOperators |
Bibliography
manpage
...