php检查用户名是否符合规定

作者:enenba | 发表于:2013-01-14 14:04 | 分类:php源码

某 cms的个php函数,用户名规定:两个字符以上,只能有中文,字母,数字,下划线。

<?php

/**
 * 检查用户名是否符合规定 (两个字符以上,只能有中文,字母,数字,下划线的)
 *
 * @param STRING $username 要检查的用户名
 * @return 	TRUE or FALSE
 */
function is_username($username) {
	$strlen = strlen($username);
	if(!preg_match("/^[a-zA-Z0-9_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]+$/", $username)){
		return false;
	} elseif ( 20 < $strlen || $strlen < 2 ) {
		return false;
	}
	return true;
}


//以下测试
$str = 'abc';
if(is_username($str)) {
	echo $str.'符合';
}else {
	echo $str.'不符合';
}
echo '<br />';

$str = '中文';
if(is_username($str)) {
	echo $str.'符合';
}else {
	echo $str.'不符合';
}
echo '<br />';

$str = '12126_($@';
if(is_username($str)) {
	echo $str.'符合';
}else {
	echo $str.'不符合';
}

?>

 输出

abc符合
中文符合
12126_($@不符合

end

上一篇: php获取从百度搜索进入网站的关键词   |   下一篇:使用php 将html 转成wml WAP标记语言» 标签: php函数 字符 用户名

评论:

2013-03-27 12:25

'/^[\x{4e00}-\x{9fa5}A-Za-z0-9_]+$/u'

这个式子更精准一些,你可以测试一下。

2013-03-18 20:50

还是不够完善,因为中文的下划线还是可以通过验证。。。。

2013-03-19 10:23

好的,我有时间改改

2013-01-15 15:19

知识啊

2013-01-14 15:31

博主的文章都很不错。