正文 1865字数 173,356阅读

/** * 是否合法的email * @param string $str * @return string||false */ function is_email($str=''){ return preg_match('/^[\w\d\_\.]+\@[\w\d\_\.\-]+\.[\w\d]{2,4}$/',str_replace('%40','@',$str)); } //是否是中文 function is_chinese($str=''){ return preg_match("/^[\x80-\xff]+$/",$str); } //是否是手机号码 function is_mobile($str=''){ return preg_match("/^1[34589]\d{9}$/",$str); } //是否是QQ号码 function is_qq($str=''){ return preg_match("/^\d{5,15}$/",$str); } //是否是正确的用户名 英文数字加下划线,4-16位 function is_uname($str=''){ return chk_string($str); return preg_match("/^[\w\d\_]{4,20}$/",$str); } //是否是正确的密码,不能有空格单引号和双引号,6-20位 function is_pwd($str=''){ return true; } //是否合法的日期 function is_date($string){ $arr=explode('-',$string); return checkdate($arr[1],$arr[2],$arr[0])?true:false; } //是否合法的身份证 function is_idcard($idcard=''){ if (strlen($idcard) != 18)return false; $idcard_base = substr($idcard, 0, 17); 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 < strlen($idcard_base); $i++) { $checksum += substr($idcard_base, $i, 1) * $factor[$i]; } $mod = $checksum % 11; $verify_number = $verify_number_list[$mod]; if ($verify_number == strtoupper(substr($idcard, 17, 1)))return true; return false; } /** *检查字符串是否合法,合法则返回真,不合法则返回假,不能含有特殊符号 *@param string $str *@return bool */ function chk_string($str=''){ return $str?preg_match('/^[a-zA-Z0-9\x80-\xff\_\@\.]+?$/',$str):false; }
Run code
Cut to clipboard