zoukankan      html  css  js  c++  java
  • PHP简单的身份证号验证

      public   function isIdCard() {
    
            $post = input("post.");
            $number = $post['id_card'];
            $sigma = '';
            //加权因子
            $wi = array(7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2);
            //校验码串
            $ai = array('1', '0', 'X', '9', '8', '7', '6', '5', '4', '3', '2');
            //按顺序循环处理前17位
            for ($i = 0;$i < 17;$i++) {
    
    
                //提取前17位的其中一位,并将变量类型转为实数
                $b = (int) $number{$i};
    
    
                //提取相应的加权因子
                $w = $wi[$i];
    
    
    
                //把从身份证号码中提取的一位数字和加权因子相乘,并累加 得到身份证前17位的乘机的和
                $sigma += $b * $w;
            }
            //echo $sigma;die;
            //计算序号  用得到的乘机模11 取余数
            $snumber = $sigma % 11;
            //按照序号从校验码串中提取相应的余数来验证最后一位。
            $check_number = $ai[$snumber];
    
            if ($number{17} == $check_number) {
    
                return 'true';
            } else {
    
                return 'false';
            }
        }
    参考:http://www.thinkphp.cn/code/1873.html
    世界上最美的风景,是自己努力的模样
  • 相关阅读:
    第二次安卓作业
    第十一次作业
    第十一次上机练习
    第十次作业
    第十次上机练习
    第九次作业
    第九次上机练习
    添加用户 Android 6
    Android 5
    activity带数据跳转
  • 原文地址:https://www.cnblogs.com/xiong-hua/p/12036630.html
Copyright © 2011-2022 走看看