from:
/**
* 驗證身份證號碼真偽
* @param $id
* @return bool
*/function checkidcard( $id )
$)|(^\d([0-9]|x)$)/';
if(!preg_match($regx, $id))
return false;
$arr_split = ;
if(15 == strlen($id))
)+(\d)+(\d)+(\d)+(\d)$/';
@preg_match($regx, $id, $arr_split);
//檢查生日日期是否正確
$dtm_birth = '19' . $arr_split[2] . '/' . $arr_split[3]. '/' . $arr_split[4];
if(!strtotime($dtm_birth))
return false;
} else
)+(\d)+(\d)+(\d)+(\d)([0-9]|x)$/';
@preg_match($regx, $id, $arr_split);
$dtm_birth = $arr_split[2] . '/' . $arr_split[3]. '/' .$arr_split[4];
if(!strtotime($dtm_birth)) //檢查生日日期是否正確
return false;
// 檢驗18位身份證的校驗碼是否正確
// 校驗位按照iso 7064:1983.mod 11-2的規定生成,x可以認為是數字10
$arr_int = [7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2];
$arr_ch = ['1', '0', 'x', '9', '8', '7', '6', '5', '4', '3', '2'];
$sign = 0;
for ( $i = 0; $i < 17; $i++ )
; $w = $arr_int[$i];
$sign += $b * $w;
} $n = $sign % 11;
$val_num = $arr_ch[$n];
if ($val_num != substr($id,17, 1))
return false;
} return true;
}
身份證號碼驗證
說明 驗證身份證的有效性 引數 cid 身份證號碼 返回 地方 出生時間 性別 private string checkcidinfo string cid if cid.length 18 char c cid cid.length 1 bool last false if c 0 c 9 c a...
驗證身份證號碼
好久沒更新了,今天簽到啦。感覺這個驗證挺重要的,也挺常用的,所以分享給需要的朋友。驗證身份證號碼,在網上找到的好東東 function checkidcard idcard var idcard,y,jym var s,m var idcard array new array idcard arra...
驗證身份證號碼
var idcardnoutil powers 7 9 10 5 8 4 2 1 6 3 7 9 10 5 8 4 2 paritybit 1 0 x 9 8 7 6 5 4 3 2 genders checkaddresscode function addresscode test address...