PHP intval 与 floatval

php中是弱类型语言,在是使用intval 和 floatval 判断变量或者是进行类型转换时,php会进行类型转换;

1 var_dump(intval('abc') == 0); //true
2 var_dump('abc' == 0); //true
3 var_dump('' == 0); //true
4 var_dump(null == 0); //true

所以,在使用intval 和 floatval 时要特别注意,建议使用下面方式:

 1    /**
 2      *
 3      *
 4      * @param $num
 5      * @return bool|int
 6      */
 7     function intval($num)
 8     {
 9         if(is_numeric($num) && intval($num) == $num){
10             return intval($num);
11         } else {
12             return false;
13         }
14     }
15 
16     /**
17      *
18      * @param $float
19      * @return bool|int
20      */
21     function floatval($float){
22         if(is_numeric($float) && floatval($float) == $float){
23             return floatval($float);
24         } else {
25             return false;
26         }
27     }

 

转载于:https://www.cnblogs.com/devw/p/5054322.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值