最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
php正则判断是否为合法身份证号的方法
时间:2022-06-24 14:45:16 编辑:袖梨 来源:一聚教程网
代码如下 | 复制代码 |
/** * 判断是否为合法的身份证号码 * @param $mobile * @return int */ functionisCreditNo($vStr){ $vCity=array( ཇ',',ཉ',ཊ',ཋ',ད',དྷ', ན',ཛ',ཛྷ',ཝ',ཞ',ཟ',འ', ཡ',ཥ',ས',ཧ',ཨ',ཀྵ',ཪ', ',',',ཱ',ི',ཹ',ེ', ཻ',ོ',ཽ',ྃ',ྍ',ྎ',ྗ' ); if(!preg_match('/^([d]{17}[xXd]|[d]{15})$/',$vStr))returnfalse; if(!in_array(substr($vStr, 0, 2),$vCity))returnfalse; $vStr= preg_replace('/[xX]$/i','a',$vStr); $vLength=strlen($vStr); if($vLength== 18) { $vBirthday=substr($vStr, 6, 4) .'-'.substr($vStr, 10, 2) .'-'.substr($vStr, 12, 2); }else{ $vBirthday=ཏ'.substr($vStr, 6, 2) .'-'.substr($vStr, 8, 2) .'-'.substr($vStr, 10, 2); } if(date('Y-m-d',strtotime($vBirthday)) !=$vBirthday)returnfalse; if($vLength== 18) { $vSum= 0; for($i= 17 ;$i>= 0 ;$i--) { $vSubStr=substr($vStr, 17 -$i, 1); $vSum+= (pow(2,$i) % 11) * (($vSubStr=='a') ? 10 :intval($vSubStr, 11)); } if($vSum% 11 != 1)returnfalse; } returntrue; } |
相关文章
- 塞尔达传说王国之泪乌萨诸马神庙怎么做乌萨诸马神庙解谜教学 04-20
- 射雕寄梅怎么收集 04-20
- 江南百景图上官婉儿主题活动内容有什么 04-20
- 原神仆人烬火音乐活动怎么参与 04-20
- 射雕手游悬赏中都渔水行首领怎么打 射雕手游悬赏中都渔水行首领攻略方法 04-20
- 江南百景图上官婉儿主题活动内容有什么 江南百景图上官婉儿主题活动内容介绍 04-20