重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
intval()当然不行,因为已经超过int自身的长度啦,所以肯定会被截短,可以用隐性转换嘛,因为php本身就是弱类型的,所以搞不懂LZ为什么要转,在程序里面使用本来就会自动帮你转类型的,如果 非要转,可以这样:
创新互联公司是专业的杂多网站建设公司,杂多接单;提供网站制作、成都网站制作,网页设计,网站设计,建网站,PHP网站建设等专业做网站服务;采用PHP框架,可快速的进行杂多网站开发网页制作和功能扩展;专业做搜索引擎喜爱的网站,专业的做网站团队,希望更多企业前来合作!
$str = "1157425104434495489";
$int_str = $str*1;
对比一下,var_dump($str == $int_str) //输出 bool true;
intval
(PHP 3, PHP 4, PHP 5)
intval -- 获取变量的整数值
描述
int intval ( mixed var [, int base] )
通过使用特定的进制转换(默认是十进制),返回变量 var 的 integer 数值。
var 可以是任何标量类型。intval() 不能用于 array 或 object。
注: 除非 var 参数是字符串,否则 intval() 的 base 参数不会有效果。
参见 floatval()、strval()、settype() 和 类型戏法。
$i = "12345678910";
$i2 = "12245678910";
echo (float)$i - (float)$i2; //输出结果正确
$i = "12345678910";
$i2 = "12245678910";
echo (int)$i - (int)$i2;//输出结果为0, 因为int型最大为27...,所以int转换后两个值都一样
?php
$ip = $_SERVER["REMOTE_ADDR"]; // 获取客户端IP
$longip = ip2long($ip);
// 程序员通常将 IP 转换成整形写入数据库
// 读取的时候再把它转成标准的 IP 地址
$ip = long2ip($longip);
echo 'pre';
print_r(array($longip = $ip));
?