【发布时间】:2012-12-16 04:15:19
【问题描述】:
我想将整数值存储在数据库中,并且为此我在 $_POST 值上使用 (int) 类型转换。但它评估另一个值而不是提交的整数。
echo (int)0444444;
输出
149796
请帮忙。
【问题讨论】:
-
0444444已经是一个整数了,强制转换在这里什么都不做;您只是选择用八进制(以 8 为基数)表示法,而不是更常见的十进制(以 10 为基数)表示法。 -
请注意,您提到“在 $_POST 值上使用 (int) 类型转换”,但您的示例使用整数。
$_POST值始终是字符串,除非您手动更改它们。 -
好点,我没有注意到在示例中..但实际上我在使用 $_POST 上的 int 类型转换的表单处理中得到了奇怪的值。
-
您已经编辑了您的问题 - 它现在具有完全不同的含义。在 32 位 PHP 中,最大 int 为
2147483647 -
复习注:几分钟前我误解了编辑的原因,所以我也将我看到的原始内容与编辑一起放回原处。 (在评论中我们没有看到完整的历史记录。)对不起,我错了,回到伊恩的建议。问候。
标签: php type-conversion