php根據身份證號,自動獲取對應的星座函式,然後自動返回對應的星座,自動返回性別,判斷是否成年
<?phpclass idcardaction extends
action
else
if (($month == 2 && $day >= 19) || ($month == 3 && $day
<= 20))
else
if (($month == 3 && $day > 20) || ($month == 4 && $day
<= 19))
else
if (($month == 4 && $day >= 20) || ($month == 5 && $day
<= 20))
else
if (($month == 5 && $day >= 21) || ($month == 6 && $day
<= 21))
else
if (($month == 6 && $day > 21) || ($month == 7 && $day
<= 22))
else
if (($month == 7 && $day > 22) || ($month == 8 && $day
<= 22))
else
if (($month == 8 && $day >= 23) || ($month == 9 && $day
<= 22))
else
if (($month == 9 && $day >= 23) || ($month == 10 && $day
<= 23))
else
if (($month == 10 && $day > 23) || ($month == 11 && $day
<= 22))
else
if (($month == 11 && $day > 22) || ($month == 12 && $day
<= 21))
else
if (($month == 12 && $day > 21) || ($month == 1 && $day
<= 19))
return
$strvalue
; }
function get_shengxiao($cid)
if ($x == 0)
if ($x == 11 || $x == -1)
if ($x == 10 || $x == -2)
if ($x == 9 || $x == -3)
if ($x == 8 || $x == -4)
if ($x == 7 || $x == -5)
if ($x == 6 || $x == -6)
if ($x == 5 || $x == -7)
if ($x == 4 || $x == -8)
if ($x == 3 || $x == -9)
if ($x == 2 || $x == -10)
return
$value
; }
function get_xingbie($cid)
function checkbig18($idcard)
else
} function getverifybit($idcard_base)
//加權因子
$factor = array(7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2);
//校驗碼對應值
$verify_number_list = array('1', '0', 'x', '9', '8', '7', '6', '5', '4', '3', '2');
$checksum = 0;
for ($i = 0; $i
< strlen($idcard_base); $i++)
$mod = $checksum % 11;
$verify_number = $verify_number_list[$mod
];
return
$verify_number
; }
function idcard_verify_number($idcard_base)//
加權因子
$factor = array(7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2);
//校驗碼對應值
$verify_number_list = array('1', '0', 'x', '9', '8', '7', '6', '5', '4', '3', '2');
$checksum = 0;
for ($i = 0; $i
< strlen($idcard_base); $i++)
$mod = $checksum % 11;
$verify_number = $verify_number_list[$mod
];
return
$verify_number
; }
function idcard_15to18($idcard)
else
else
}$idcard = $idcard.$this->idcard_verify_number($idcard
);
return
$idcard
; }
function check_cardid($cardid)//
判斷身份證大是否正確。
$/"; //
$pattern="/^d$/";
$num = preg_match($pattern,$cardid
); }
elseif($cardlen ==18)
[0-9xx]$/";
$num=preg_match($pattern,$cardid
); }
else
return
$num
; }
function chkgb2312($str)
else
} function isidcard($number) ;
//提取相應的加權因子
$w = $wi[$i
];
//把從身份證號碼中提取的一位數字和加權因子相乘,並累加
$sigma += $b * $w
; }
//計算序號
$snumber = $sigma % 11;
//按照序號從校驗碼串中提取相應的字元。
$check_number = $ai[$snumber
];
if ($number == $check_number
) else
}}?>
php身份證驗證類
收藏乙個身份證驗證方面的 php 函式,以備不急之需。php 計算身份證校驗碼,根據國家標準gb 11643 1999 function idcard verify number idcard base 加權因子 factor array 7 9,10 5,8 4,2 1,6 3,7 9,10 5,...
身份證驗證
1 簡單的正規表示式 1 preg match d d dx id card 2 preg match d 18 19 20 d 01 d 0123 d d d x id card 3 preg match d d d x x id card 2 複雜並且嚴格一些的驗證 這個可以驗證15位和18位的...
身份證驗證
身份證分為兩類 1 全是數字 15位或者18位。2 大寫x 18位,最後一位字母x,其餘必需是數字。正則 d d d d x 身份驗證例項 header content type text html charset utf 8 idc post idc bm substr idc,0,6 gende...