如何在php中处理大型唯一标识符


how to handle large unique identifiers in php?

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

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

这是我的一个号码95315898521642

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

您可以将filter_varFILTER_SANITIZE_NUMBER_INT一起使用

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

你可能想看看长数据类型,看看如何在PHP上有64位整数?查看更多信息。

如果你处理的是整数你可以使用ctype_digit()

PHP的最大整数大小是64位系统的9223372036854775807,32位系统的2147483647。

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