为了方便测试,详细的代码如下:
正则表达式验证:利用正则表达式模式匹配身份证号,验证是否符合哀求。<?php$id_card = 39;370829198803020911';if (preg_match('/^[1-9]\d{5}(18|19|([23]\d))\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$/', $id_card)) { echo '身份证号码精确';} else { echo '身份证号码禁绝确';}
2.校验码验证:打算身份证号的校验码,验证是否与实际校验码相等。
<?php$id_card = '370829198803020911';$id_len = strlen($id_card);if ($id_len == 18) { $id_base = substr($id_card, 0, 17); $id_check = strtoupper(substr($id_card, 17, 1)); $wi = array(7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2); $ai = array('1', '0', 'X', '9', '8', '7', '6', '5', '4', '3', '2'); $s = 0; for ($i = 0; $i < 17; $i++) { $s += $id_base[$i] $wi[$i]; } $id_check_calc = $ai[$s % 11]; if ($id_check == $id_check_calc) { echo '身份证号码精确'; } else { echo '身份证号码禁绝确'; }} else { echo '身份证号码禁绝确';}
觉得要努力学习到高等程序员才不会失落业,看来不但是IT行业卷,往后很多行业都很卷,大家真的要努力学习,不然要被人工智能淘汰了。