本文实例讲述了php身份证号码检查类。分享给大家供大家参考。具体如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
|
<?php class CIDMaker // 声明一个身份证号码检查类 { var $id ; var $err ; var $idx = array (1,1,1,1,1,1,1,1,3,1,1,2,2,2,3,2,2,2,2,2,2,2,3,3,3,3); var $idy = array (0,1,2,3,4,5,6,7,4,8,9,0,1,2,5,3,4,5,6,7,8,9,0,1,2,3); function check( $id_no ) { $id_no = ucfirst( $id_no ); // 将英文字母转大写 if ( ereg ( "^[A-Z][0-9]{9}$" , $id_no )) { for ( $i =0; $i <10; $i ++) $ch [ $i ] = substr ( $id_no , $i ,1); $i = 0; // 将英文字母转为数字 BEGIN for ( $char = "A" ; $char != $ch [0]; $char ++) $i ++; // 将英文字母转为数字 END // 导入检查公式 BEGIN $id = $this ->idx[ $i ]+ $this ->idy[ $i ]*9+ $ch [1]*8+ $ch [2]*7+ $ch [3]*6+ $ch [4]*5+ $ch [5]*4+ $ch [6]*3+ $ch [7]*2+ $ch [8]*1+ $ch [9]*1; $id = (( $id % 10) == 0) ? TRUE : FALSE; return $id ; // 导入检查公式 END } else return 0; } } ?> |
希望本文所述对大家的php程序设计有所帮助。