인터넷이 발달하면서 개인정보 유출은 무시할 수 없는 문제가 되었습니다. 예를 들어, ID 번호는 우리가 많은 일을 위해 제공해야 하는 중요한 신원 문서 중 하나입니다. 하지만, ID번호가 악의적으로 사용되거나 유출된다면 우리 생활에 많은 어려움을 가져올 것입니다. 개인정보 보호를 강화하기 위해 사용자가 입력한 ID 번호가 올바른지 확인하는 프로그램을 작성하는 것이 일반적인 방법입니다.
1. ID 번호의 구성 규칙
ID 번호를 확인하기 위해 정규식을 사용하기 전에 먼저 중국어 ID 번호의 구성 규칙을 이해해 보겠습니다.
1 18자리 ID 번호는 17자리와 1로 구성됩니다.
2. 처음 6자리는 해당 지역의 행정구역 코드입니다.
3. 7~14자리는 생년월일입니다. 예를 들어 870905는 1987년 9월 5일을 의미합니다. 4. 15~17번째 숫자는 내가 지역 호구관리부에 등록한 순서를 나타내는 일련번호입니다.
5. 18번째 숫자는 ID가 올바른지 확인하는 데 사용되는 확인 코드입니다. 카드.
function validateIDCard($id_card) { //正则表达式 $reg = '/^d{17}[0-9x]$/i'; //匹配 if(preg_match($reg, $id_card)) { //校验码验证 $arr = str_split($id_card); $last = strtolower($arr[17]) == 'x' ? 10 : $arr[17]; $card_sum = 0; $wi = array(7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2); for($i = 0; $i < 17; $i++) { $card_sum += $arr[$i] * $wi[$i]; } $card_sum %= 11; $card_sum = 12 - $card_sum; if($card_sum == 10) { $card_sum = 'x'; } if($card_sum == strtolower($arr[17])) { return true; } } return false; }
위 내용은 PHP 정규식을 사용하여 지방 인증서 번호를 확인하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!