使用 '==' 与 'strcmp()' 的字符串比较

php
2022-08-30 06:00:10

PHP的运算符似乎区分大小写。那么有理由使用吗?===strcmp()

执行以下操作是否安全?

if ($password === $password2) { ... }

答案 1

使用它的原因是因为strcmp

如果 str1 小于 str2,则返回 < 0;如果 str1 大于 str2,则> 0;如果它们相等,则> 0。

===只返回 或 ,它不会告诉您哪个是“更大”字符串。truefalse


答案 2

切勿用于字符串比较。 还可以。=====

$something = 0;
echo ('password123' == $something) ? 'true' : 'false';

只需运行上面的代码,你就会明白为什么。

$something = 0;
echo ('password123' === $something) ? 'true' : 'false';

现在,这有点好一点。


推荐