公共方法整合(二)正则验证类
本文同样存储一些本人使用的公共方法
不过本篇主要存储的是一些验证方法
方法目录:
方法:
/** * 正则判定手机号码格式是否正确 * @param [type] $phone 手机号码 * @return boolean 判定结果 */ function is_mobile($phone) { // $preg = '/^(0|86|17951)?(13[0-9]|15[0-9]|17[0-9]|18[0-9]|14[57])[0-9]{8}$/'; #正则方法 上面早期的部分号段不全 $preg = '/^[1][3,4,5,6,7,8,9][0-9]{9}$/'; return (bool) preg_match($preg, $phone); }
2020年08月27日
方法:
/** * 正则判定身份证号码是否正确 * @param [type] $idcard 身份证号码 * @return boolean 判定结果 */ function isIdCard($idcard) { $preg = '/^[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]$/'; return (bool) preg_match($preg, $idcard); } #方法二 /** * 验证18位身份证(计算方式在百度百科有) * @param string $id 身份证号码 * @return [type] 判定结果 */ function check_identity($id='') { $set = array(7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2); $ver = array('1','0','x','9','8','7','6','5','4','3','2'); $arr = str_split($id); $sum = 0; for ($i = 0; $i < 17; $i++) { if (!is_numeric($arr[$i])) { $result['status'] = 0; $result['info'] = '请输入18位身份证号'; return $result; } $sum += $arr[$i] * $set[$i]; } $mod = $sum % 11; if (strcasecmp($ver[$mod],$arr[17]) != 0) { $result['status'] = 0; $result['info'] = '您的身份证号不符合中国公民,请检查'; return $result; } return TRUE; }
2020年08月07日
方法:
#正则判定用户名 #方法一 /** * 正则判定用户名 大写字母为首的6-20 * @param [type] $users 用户名 * @return boolean 判定结果 */ function isUsers($users) { $preg = '/^[a-zA-Z]\w{6,20}$/'; return (bool)preg_match($preg, $users); } #方法二 /** * 正则判定用户名是否为中文 * @param [type] $truename 用户名 * @return boolean 结果 */ function isName($truename) { // $preg = '/([\u4e00-\u9fa5]){2,4}/'; // $preg = '/^[\u4E00-\u9FA5\uf900-\ufa2d·s]{2,8}$/'; $preg = '/^[\x{4e00}-\x{9fa5}]{2,8}+$/u'; return (bool) preg_match($preg, $truename); }
# 方法三
# 正则判定昵称 中文 英文 数字 下划线 function isNickName($str) { if (preg_match("/[\x{4e00}-\x{9fa5}\w]+$/u", $str)) { return true; } return false; } # 正则判定密码 限制六道二十位之间 数字字母 下划线 function isCardSn($str) { if (preg_match('/^[_0-9a-z]{6,20}$/i',$str)) { return true; } return false; } # 正则判定支付密码 限制六位数字 function isPayWord($str) { if (preg_match('/^\d{6}$/',$str)) { return true; } return false; }
2020年08月27日
方法持续更新中...