身份證驗證PHP類

2022-06-10 15:51:07 字數 3523 閱讀 9411

php根據身份證號,自動獲取對應的星座函式,然後自動返回對應的星座,自動返回性別,判斷是否成年

<?php

class 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...