我正在与facebook api进行互动,而这正在向我发送一些相当大的内容 例如
$facebook_action['id'] => "123540931515315"
intval($facebook_action['id']) gives me "2147483647"
在我的数据库中,我曾计划将其存储为整数但是这些可能太大了,因为在php转换中返回给我最大的int值。 我应该将它们作为字符串存储而不是如何处理它?</ p>
在MySQL中我看到我可以使用BIG INTEGER但是如何在PHP中处理这个?
答案 0 :(得分:1)
将系统升级到64位架构以处理该大整数值:)
intval的“返回值”部分明确说明了获得2147483647的原因。
即。 32位系统的最大有符号整数范围为-2147483648至2147483647.
答案 1 :(得分:1)
你超过了PHP中整数类型的限制。 32位系统的最大有符号整数范围为-2147483648到2147483647.由于您使用的值超过2147483647,因此它存储2147483647.请参阅http://php.net/manual/en/function.intval.php。您可能希望执行某些评论者建议的操作,并使用varchar,尤其是在这些值可能包含非数字字符的情况下。