乐山高端网站建设,江门网站seo推广,温州做网站厉害的公司有哪些,wordpress 首页统计intVal($str) 跟 (int) $str 都是把其他类型的变量转化为int型变量的方式#xff0c;这么多年来我一直森森滴怀疑它们的运算结果在某些条件下会有区别。对于我的疑问#xff0c;文档里也没有多说#xff08;或者我没找到#xff09;#xff0c;还是做个实验验证一下吧。 除…intVal($str) 跟 (int) $str 都是把其他类型的变量转化为int型变量的方式这么多年来我一直森森滴怀疑它们的运算结果在某些条件下会有区别。对于我的疑问文档里也没有多说或者我没找到还是做个实验验证一下吧。 除了intVal函数的第二个参数可以指定$str字符串的进制形式外对于普通的10进制数字型字符这两种方式有什么样的区别呢 小实验 $arr array($a 19,$b 19.99,$c 19.99,$d ,$d sfsdf,$f 0x20,$e array(19.99)
);foreach ($arr as $k $v){$v intval($v);echo intval({$v}) is : , var_dump($v) , PHP_EOL;
}
echo -----------------------, PHP_EOL;
foreach ($arr as $k $v){$v (int)($v);echo intval({$v}) is : , var_dump($v) , PHP_EOL;
}
die(); 输出结果 intval(19) is :int(19)intval(19) is :int(19)intval(19) is :int(19)intval(0) is :int(0)intval(0) is :int(0)intval(1) is :int(1)-----------------------
intval(19) is :int(19)intval(19) is :int(19)intval(19) is :int(19)intval(0) is :int(0)intval(0) is :int(0)intval(1) is :int(1) 实验分析输出的结果有两个值得注意的地方第一他们的结果完全一致第二非空会被转化为1空会被转为0。 实验结论 输出结果没啥区别但intval()毕竟是要有函数调用的所以相比较而言会慢那么一丢丢。 课外题 $v intval($v); 改成 $v intval($v * 100); 试一下会有什么惊喜 另外举一反三其他的类型转换方式会不会有相同的答案呢试一下吧