使用PHP计算两个十进制数的十进制Xor

时间:2016-12-13 17:54:03

标签: php numbers logical-operators

我想使用PHP对这两个十进制数进行Xor。我已经尝试了按位运算符XOR(^),但输出错误,因为我也希望它在十进制中。

第一个数字= 121065035052

第二个数字= 210022101 预期十进制xored输出= 121274989561

echo  210022101 ^ 121065035052 ;

此echo语句的输出为:1015905273

请帮助我。提前致谢

1 个答案:

答案 0 :(得分:0)

第一个数字121065035052是一个37位数字,因此您的代码仅适用于64位PHP。 为了与32位PHP兼容,请使用GMP。

$a = gmp_init('121065035052');
$b = gmp_init('210022101');
$c = gmp_xor($a,$b);

echo gmp_strval($c);

预期输出为121274989561。