好的,我已经阅读了一些指南,但我仍然对这样做的目的有些困惑。
我在一个项目中遇到了一些代码,我从以前的开发人员那里得到了一些代码,其中有这样的项目:
if (is_numeric($var) && ((int)$var == $var){
在第二次检查中将 $var 类型转换为 int 的目的是什么?如果 $var 不是数字,或者至少是一个可以评估为数字的字符串,那么整个事情将评估为 false。即使 $var 是一个字符串而不是一个数字,如果字符串可以评估为一个数字,第二次检查也会评估为真。
只使用 is_numeric() 并保留它不是更有意义吗?