在mysql中:
select CAST(17640478426339470149 as SIGNED INTEGER); #-806265647370081467
在php中:
echo sprintf("%d", 17640478426339470149); #-806265647370082304
我将如何获得相同的签名int? (为什么会出现这种差异?)
答案 0 :(得分:0)
我找到解决方案,我不确定,如果它是最佳的,但至少它是有效的。
echo gmp_strval(gmp_com(gmp_xor('17640478426339470149', '0xffffffffffffffff')));
#-806265647370081467