PHP简单身份证号码验证

PHP简单身份证号码验证

分享一个简单的身份证号码验证函数。可以对15位身份证号码和18位身份证号码进行简单的验证。

  1. /**
  2.  * @desc 校验身份证号码
  3.  * @param string $id_num
  4.  * @return false|int
  5.  */
  6. function idChecker($id_num=''){
  7.     $length = strlen($id_num);
  8.     if($id_num = '' || !in_array($length,[15,18])){
  9.         return false;
  10.     }
  11.     $rule15 = "/^[1-9]\d{7}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}$/";
  12.     $rule18 = "/^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}(\d|x|X)$/";
  13.     if($length === 15){
  14.         return preg_match($rule15,$id_num);
  15.     }
  16.     if($length === 18){
  17.         return preg_match($rule18,$id_num);
  18.     }
  19. }

如何想匹配国家数据库的信息,对身份证号码进行严格的验证,小伙伴们可以参考这篇文章《如何还原被星号隐藏的身份证号?》。

 

你想把广告放到这里吗?

发表评论

您必须 登录 才能发表留言!