使用==与strcmp进行字符串比较PHP的===运算符似乎区分大小写?那么有什么理由可以使用strcmp()吗?做以下事情是否安全:if ( $password === $password2 ) { ... }
3 回答
![?](http://img1.sycdn.imooc.com/545850ee0001798a02200220-100-100.jpg)
紫衣仙女
TA贡献1839条经验 获得超15个赞
你永远不应该==
用于字符串比较。===
没关系
$something = 0;echo ('password123' == $something) ? 'true' : 'false';
只需运行上面的代码,你就会明白为什么。
$something = 0;echo ('password123' === $something) ? 'true' : 'false';
现在,这好一点。
![?](http://img1.sycdn.imooc.com/533e50ed0001cc5b02000200-100-100.jpg)
慕尼黑的夜晚无繁华
TA贡献1864条经验 获得超6个赞
不要==
在PHP中使用。它不会做你期望的。即使您将字符串与字符串进行比较,PHP也会隐式地将它们转换为浮点数,并在它们看起来是数字时进行数值比较。
例如,'1e3' == '1000'
返回true。你应该使用===
。
- 3 回答
- 0 关注
- 479 浏览
添加回答
举报
0/150
提交
取消