在 PHP 中将字符串转换为长整型 int 的正确方法

我试过了,但可悲的是,我得到的只是(我意识到这是因为32位架构或一些php依赖性或其他什么)。(int) "4209531264"intval("4209531264")2147483647

我想出了返回正确结果的方法,但是看到它工作是令人惊讶的,因为它超出了maxint。"4209531264" + 0

但真正的问题是:这是将字符串转换为长线的“正确方法”吗?

编辑:

(float)那是。

感谢您的评论!大开眼界!


答案 1

只要您不是很讲究最终得到的确切值类型,可能是转换输入的最佳方式,因为它会转换为“自然”数字数据类型。"number" + 0

如果输入没有小数部分,则结果将为整数,并且适合(请参阅),如果没有,则结果将为浮点数。PHP_INT_MAX


答案 2

推荐