Php facebook用户ID-bigint mysql值

Php facebook用户ID-bigint mysql值,php,mysql,facebook-php-sdk,biginteger,Php,Mysql,Facebook Php Sdk,Biginteger,我们目前正在使用bigint20来存储来自facebook的用户ID。 但是,facebook使用的新用户ID格式存在一些问题: Ex: 10152620408662937 这里的问题是mysql和php会将上述数字重写为: 1.0152620408663E+16 正如您可以想象的,我们的数据库bigint20在处理这个问题时遇到了困难 有人知道对此可以做些什么吗? 我们是否需要将格式从bigint20更改为其他格式,或者在存储之前以另一种方式解析id 感谢您鉴于: 这些ID实际上没有数字含

我们目前正在使用bigint20来存储来自facebook的用户ID。 但是,facebook使用的新用户ID格式存在一些问题:

Ex: 10152620408662937
这里的问题是mysql和php会将上述数字重写为:

1.0152620408663E+16
正如您可以想象的,我们的数据库bigint20在处理这个问题时遇到了困难

有人知道对此可以做些什么吗? 我们是否需要将格式从bigint20更改为其他格式,或者在存储之前以另一种方式解析id

感谢您

鉴于:

这些ID实际上没有数字含义 PHP缺乏对大宽度整数的良好支持 这些值不符合浮点格式的属性,对它们执行的操作也不需要浮点格式的属性
您应该将它们存储/操作为字符串。

您可以使用PHP中的GMP库:

$bigint = gmp_init("1.0152620408663E+16");
$bigint_string = gmp_strval(bigint);
var_dump($bigint_string);
//应输出:

 string(19) "10152620408662937"

GMP库:

您可以始终使用text或varchar,但imho bigint20应该足够了。你确定问题已经出在mysql上了,而不是php吗?