$_GET[id];
$id=(int)$_GET['id'];
mysql store - int
我有一个关于将字符串转换为整数的问题。
(转换帖子ID以确保用户不发送字符串)
和mysql存储类型 - int
我注意到如果id大于2147483647,则数字变得疯狂。
如果网站帖子超过2147483647怎么办?
是否可以将其转换为bigint?或者我不应该将字符串转换为int?
我是否将mysql商店类型更改为 - bigint?
答案 0 :(得分:1)
在MySql can only go up to 2^31中签名INT
,是的 - 您必须将列转换为BIGINT
。
除此之外,您还必须处理PHP的限制。 PHP中的整数不能大于PHP_INT_MAX
(确切的值取决于环境),因此如果您坚持使用基元,则必须以字符串或浮点形式处理大于该值的数字。将值保存为字符串应该没问题,因为它是一个id,而你不用id做数学。