
首先在function.php这个公共方法里面添加下面这几个方法,如下
// 计算校验码,根据国家标准GB 11643-1999
function idcard_verify_number($idcard_base){
if(strlen($idcard_base)!=17){
return false;
}
//加权因子
$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
$checksum += substr($idcard_base,$i,1) * $factor[$i];

}
$mod=$checksum % 11;
$verify_number=$verify_number_list[$mod];
return $verify_number;
}
// 将15位升级到18位
function idcard_15to18($idcard){
if(strlen($idcard)!=15){
return false;
}else{
// 如果顺序码是996 997 998 999,这些是为百岁以上老人的特殊编码
if(array_search(substr($idcard,12,3),array(‘996′,’997′,’998′,’999’)) !== false){
$idcard = substr($idcard, 0, 6) . '18'. substr($idcard, 6, 9)。$idcard = substr($idcard, 0, 6) . '19'. substr($idcard, 6,9)。$idcard = substr($idcard, 0, 6) . '19'. substr($idcard, 6, 9)。

}else{
$idcard=substr($idcard,0,6).’19’.substr($idcard,6,9);
}
}
$idcard=$idcard.idcard_verify_number($idcard);
return $idcard;
}
// 18位校验码有效性检查
function idcard_checksum18($idcard){
if(strlen($idcard)!=18){
return false;
}
$idcard_base=substr($idcard,0,17);

=strtoupper(substr($idcard,17,1))){ 。= strtoupper(substr($idcard, 17, 1))){。if (idcard_verify_number($idcard_base) 。
return false;
}else{
return true;
}
}
然后验证的时候,在模型那里定义验证规则,验证,如下
namespace Admin\Model;
use Think\Model;
class EmployeeModel extends Model{
protected $trueTableName=’ecs_erp_employee’;
protected $patchValidate = true;
protected $_validate=array(

正确键盘输入命令格式应为输输入2个数字表示分,2个数字范围 00---.59 格式xx分,最后输入回车陋j。3、输入格式正确的话,则会弹出新的页面,并且会根据你输入的进网许可证号给出你所买设备的型号,在“设备型号”下拉列表中显示出的型号为正确型号php 验证号码,应和标志上的第二行信息(设备型号)一致。3.模块中所有方法均遵循 api.functionname(params, callback)格式,params为json格式,callback是function类型,callback返回两个参数,均为json格式:callback(ret, err)php 验证号码,ret处理成功信息,err处理错误信息。
);
function validation_filter_id_card($id_card){
if(strlen($id_card)==18){
return idcard_checksum18($id_card);
}elseif((strlen($id_card)==15)){
$id_card=idcard_15to18($id_card);
return idcard_checksum18($id_card);
}else{
return false;
}
}
}
完。
© 著作权归作者所有,转载或内容合作请联系作者
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-110421-1.html
抵制南方
早安小王子@TFBOYS-易烊千玺
烊烊