//验证VIN车辆识别代码是否正确 function check($vin, $ismake=0) { $weight = [8,7,6,5,4,3,2,10,0,9,8,7,6,5,4,3,2]; $map = ['0'=>0,'1'=>1,'2'=>2,'3'=>3,'4'=>4,'5'=>5,'6'=>6,'7'=>7,'8'=>8,'9'=>9, 'A'=>1 ,'B'=>2, 'C'=>3, 'D'=>4, 'E'=>5, 'F'=>6, 'G'=>7, 'H'=>8, 'J'=>1, 'K'=>2, 'L'=>3, 'M'=>4, 'N'=>5, 'P'=>7, 'R'=>9, 'S'=>2, 'T'=>3, 'U'=>4, 'V'=>5, 'W'=>6 , 'X'=>7, 'Y'=>8, 'Z'=>9]; $num = 0; if(!preg_match('#^[1-9A-Z][0-9A-Z]{16}$#i', $vin) || preg_match('#^([0-9A-Z])\1{16}$#', $vin)) return false; $vin = strtoupper($vin); $result = str_split($vin); foreach($result as $k=>$v){ if($k == 8) continue; $num += $weight[$k] * $map[$v]; //var_dump($num); } $yu = $num%11 == 10 ? 'X' : $num%11; if($ismake) return $yu; else return $yu == $result[8] ?true :false; } //生成第9位: $nine = check('1HGCM82633A123456', 1); //验证第9位是否合法: if(check('1HGCM82633A123456')) echo '合法';
PHP通用请求函数,CURL封装
© 2015-2025 杭州极速互联科技有限公司 版权所有 浙ICP备17047587号-4 浙公网安备33010502005096 增值电信业务经营许可证:浙B2-20190875