Laravel  
laravel
文档
数据库
架构
入门
php技术
    
Laravelphp
laravel / php / java / vue / mysql / linux / python / javascript / html / css / c++ / c#

检测身份证 php

作者:傲骨依旧   发布日期:2026-02-12   浏览:59

要检测身份证号码的有效性,可以使用以下方法:

  1. 检查身份证号码长度是否为18位。

    function validateIdCard($idCard) {
     if (strlen($idCard) != 18) {
         return false;
     }
     // 其他验证逻辑
     return true;
    }
  2. 检查身份证号码是否符合身份证号码的规则。

    function validateIdCard($idCard) {
     if (strlen($idCard) != 18) {
         return false;
     }
     $pattern = '/^\d{17}[\dX]$/';
     if (!preg_match($pattern, $idCard)) {
         return false;
     }
     // 其他验证逻辑
     return true;
    }
  3. 检查身份证号码的校验位是否正确。

    function validateIdCard($idCard) {
     if (strlen($idCard) != 18) {
         return false;
     }
     $pattern = '/^\d{17}[\dX]$/';
     if (!preg_match($pattern, $idCard)) {
         return false;
     }
     $factor = array(7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2, 1);
     $checksum = array('1', '0', 'X', '9', '8', '7', '6', '5', '4', '3', '2');
     $sum = 0;
     for ($i = 0; $i < 17; $i++) {
         $sum += $idCard[$i] * $factor[$i];
     }
     $mod = $sum % 11;
     if ($checksum[$mod] != $idCard[17]) {
         return false;
     }
     return true;
    }

使用以上任意一种方式,可以通过传入身份证号码调用 validateIdCard 函数来检测身份证的有效性。

上一篇:php if某为空

下一篇:php 关联数组 修改

大家都在看

php session用法

php 定义常量

php soapclient

phpisset函数

php html转图片

php后端

php爬虫框架

php多线程与并发

php读取csv文件

php+mysql动态网站开发

Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3

Laravel 中文站