在php中对输入进行中文、英文、数字的判断。
例子:
 
<?php
/**
* 检测输入是否为中文、英文或数字
* edit: www.jb200.com
*/
$str='asb天水市12';
if (preg_match("/^[x7f-xff]+$/", $str)){ 
echo '全部是汉字'; 
}else { 
echo '不全是汉字'; 
} 
/** 
PHP自带的判断是否是中文, 
eregi('[^x00-x7F]', $str ) //中文 
eregi('[0-9]', $str) //数字 
eregi('[a-zA-Z]', $str)//英文 
*/ 
if (eregi('[^x00-x7F]', $str) || eregi('[0-9]', $str) || eregi('[a-zA-Z]', $str)){ 
echo '你输入的为中英文数字的并合体哦!'.'<br>'; 
echo "长度:".strlen($str); 
} 
/ **
以下两个方法用来判断是否是英文汉字和数字组成的字符串, 
或全部是中文组成的字符串 用的变量$str还是本文开头的变量
*/
if (preg_match_all("/^([x81-xfe][x40-xfe])+$/", $str, $match)) { 
echo '全部是汉字'; 
} else { 
echo '不全是汉字'; 
}
if (preg_match("/([x81-xfe][x40-xfe])/", $str, $match)) { 
echo '含有汉字'; 
} else { 
echo '不含有汉字'; 
}
/**
此为js方法,判断了一个汉字占两个字节,一个中文或数字占一个,使用编码为UTF-8
*/
<script>
var leng = {};
var value = document.forms[0].name.value; 
jmz.GetLength = function(str) { 
var realLength = 0, len = str.length, charCode = -1; 
for (var i = 0; i < len; i++) { 
charCode = str.charCodeAt(i); 
if (charCode >= 0 && charCode <= 128) realLength += 1; 
else realLength +=2; 
} 
return realLength; 
};
alert(leng.GetLength(value))
</script>
function checkStr($str){ 
$output=''; 
$a=ereg('['.chr(0xa1).'-'.chr(0xff).']', $str); 
$b=ereg('[0-9]', $str); 
$c=ereg('[a-zA-Z]', $str); 
if($a && $b && $c){ $output='汉字数字英文的混合字符串';} 
elseif($a && $b && !$c){ $output='汉字数字的混合字符串';} 
elseif($a && !$b && $c){ $output='汉字英文的混合字符串';} 
elseif(!$a && $b && $c){ $output='数字英文的混合字符串';} 
elseif($a && !$b && !$c){ $output='纯汉字';} 
elseif(!$a && $b && !$c){ $output='纯数字';} 
elseif(!$a && !$b && $c){ $output='纯英文';} 
return $output; 
}
echo checkStr('5爱u');