BIGINT的PHP/MYSQL问题

Ale*_*lex 5 php mysql sql

我有一个mysql数据库和一个表来存储来自twitter API的东西.当我用twitter从PHP解析数据时,我使用mysql_query将数据插入表中.

我的推文ID有一个奇怪的问题:

例如,ID为15861323074113537(来自谷歌的推文)的状态更新存储在数据库中:15861323074114000(最后4位数字被更改).

php查询是:

$sql = mysql_query("INSERT INTO $table (id,tw_text) VALUES ($id,'$tw_text')");
Run Code Online (Sandbox Code Playgroud)

如果我通过phpmyadmin编辑记录,则存储正确的值(15861323074113537).该列是BIGINT.

所以我想用php函数mysql_query和INSERT命令进行一些奇怪的事情.

任何想法/解决方案?

提前致谢

ugh*_*fhw 1

PHP 整数不能那么大。当使用不适合整数的数字时,它将转换为浮点数。您可能会看到的是,即使是浮点数也不够精确,无法包含那么多数字。遵循 webbiedave 的建议并将其保留为字符串以避免四舍五入。

  • 不,对于 64 位系统,PHP 最多可以存储 `9223372036854775807` (2认同)