网站首页 文章专栏 php常用验证(关于用户信息)
验证用户名是否合法,必须是以字母开头,只能包含字母数字下划线和减号,6到18位
function checkUserName($username) { if (preg_match('/^[A-Za-z]{1}[A-Za-z0-9_-]{5,17}$/', $username)) { return 1; } else { return 0; } }
2.验证密码强度,6-16位,,至少有一个数字,一个大写字母,一个小写字母和一个特殊字符,四个任意组合
function checkPassword($password) { if (preg_match('/(?=^.{6,16}$)(?=.*\d)(?=.*[A-Z])(?=.*[a-z])(?=.*[!@#$%^&*]).*$/', $password)) { return 1; } else { return 0; } }
3.验证邮箱是否合法,必须有@,前边最少2个字符,字母或数字开头,域名部分最少1位,后缀可以是一级也可以是二级,最少两位
function checkEmail($email) { $email = strtolower($email);// 全部转小写(邮箱不区分大小写) if (preg_match('/^[a-z0-9]{1}[a-z0-9_-]{1,}@[a-z0-9]{1,}(\.[a-z]{2,})*\.[a-z]{2,}$/', $email)) { return 1; } else { return 0; } }
4.验证手机号是否合法
function checkPhone($phone) { if (preg_match('/^1[345678]{1}\d{9}$/', $phone)) { return 1; } else { return 0; } }
5.验证身份证号是否合法
function checkIdCard($idcard) { if (preg_match('/^[1-9]{1}\d{5}[1-9]{2}\d{9}[Xx0-9]{1}$/', $idcard)) { return 1; } else { return 0; } }
6.验证银行卡号是否合法
function checkBankCard($idcard) { $pattern = '/^\d{11,24}$/'; if (!preg_match($pattern, $card)) { return false; } //如果是标准银联卡,检测卡号是否正确 if (self::startsWith($card, ['62', '638888', '685800'])) { // step2 LUHN 算法校验 $len = strlen($card); $sum = 0; for ($i = 0; $i < $len; $i++) { if (($i + $len) & 1) { // 奇数 $sum += ord($card[$i]) - ord('0'); } else { // 偶数 $tmp = (ord($card[$i]) - ord('0')) * 2; $sum += floor($tmp / 10) + $tmp % 10; } } return $sum % 10 === 0; } return true; }
转载请注明出处