如何处理PHP中的大型唯一标识符?

时间:2013-03-27 20:23:03

标签: php integer

如何在php中验证id?我通常是用户intval($_GET['id'])但是现在我正在处理大数字,intval正在将它们作为0返回。

$id = intval($_GET['id']);

这是我的一个号码95315898521642

注意:我要检查的是一个数字是> 0

4 个答案:

答案 0 :(得分:0)

您可能需要查看long数据类型,有关详细信息,请参阅how to have 64 bit integer on PHP?

答案 1 :(得分:0)

您可以将filter_varFILTER_SANITIZE_NUMBER_INT

一起使用
$id = filter_var($_GET['id'], FILTER_SANITIZE_NUMBER_INT);

if (!empty($id) && '-' != $id[0])
{
  echo 'Good!';
}

答案 2 :(得分:0)

如果您要处理整数,可以使用ctype_digit()

答案 3 :(得分:0)

对于64位系统,PHP中的最大整数大小为9223372036854775807;对于32位系统,则为2147483647。

您始终可以尝试使用is_numeric()验证值是数字还是正则表达式,例如preg_match('/^[0-9]+$/i', $_GET['id'])