您的位置:首页 > 编程语言 > PHP开发

PHP数据类型转换的一些坑

2015-08-14 13:40 579 查看
PHP作为一门弱类型语言,在数据类型方面不像JAVA那么严格,在数据转换方面有时候却会不小心就掉进了坑里面,

字符串转换整型,Float等,如果不加注意,都会得不到自己预想的结果。

<span style="font-size:24px;">//字符串转数字,遇到字符就不进行下面的转换了
$str = '22ww333';
settype($str,'integer');
echo $str.'<br>';//22
$str = '121.9.3www111';
//转换为整型,但是并不会四舍五入,因为遇到了.
echo intval($str).'<br>';//输出121
//转换为float.float认为.属于它的范围,但是只会取第一个.
echo floatval($str).'<br>';//输出121.9
$a = '27777777777733333333333330';
$b = '27777777777733333333333331';
$c='111111112';
$d='111111113';
$a = intval($a);
$b = intval($b);
var_dump($a == $b);//true  这里因为上面的长度超过了int型的长度,自动截断,所以就一样了啊。。。
$c = intval($c);
$d = intval($d);
var_dump($c == $d);//false  没有超过长度,正常。</span>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: