PHP中十六进制计算?
PHP中文网
PHP中文网 2017-04-10 14:51:52
0
2
752

比如十六进制: $s = '9C216AFB868C';
现在 $s 加 1,php 中怎么实现了?

PHP中文网
PHP中文网

认证高级PHP讲师

reply all(2)
巴扎黑

9C216AFB868C 已经超出了正常 32 位的范围,可以试试 PHP 专门进行大数运算的扩展库 GMP 库(GNU Multiple Precision)。

$sum = gmp_add("9C216AFB868C", "1");
echo gmp_strval($sum);
PHPzhong

php 发现 对$a的操作是 + ,就会把$a隐式转换成数字(转换规则见手册),9C216AFB868C 由于前面没有标明(0x..)是16进制数字,会看作字符串按照规则转换成数字9,加一后便是10;

如果是

$s = '0x9C216AFB868C';
$a+1;

则把 $a当作16进制来处理的。希望能帮到你

Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template