9

很多其他人似乎都遇到过这个问题,但通常与 MySQL 数据类型相关。

我正在尝试将字符串转换为整数,如下所示:

$adGroupId  = '5947939396';
$adGroupId  = intval($adGroupId)

但是,无论输入的字符串如何,返回的整数都是 2147483647。

4

3 回答 3

14

该数字太大而无法放入整数数据类型(如上所示,最大整数值为 2147483647)。将其转换为浮点数将起作用:

$adGroupId  = '5947939396';
$adGroupId  = floatval($adGroupId)
于 2013-03-20T19:13:57.720 回答
4

发生这种情况是因为它2147483647是最大整数值。你可以使用浮点数

$adGroupId  = '5947939396';
$adGroupId  = floatval($adGroupId);
echo $adGroupId;
于 2013-03-20T19:13:57.727 回答
1

只需将其类型转换为浮点数

$adGroupId = (float)$adGroupId;

接受的答案和这一差异之间的参考: Typecasting vs function to convert variable type in PHP

于 2013-03-20T19:59:21.697 回答