php 判断是否是中文/英文/数字示例代码


复制代码 代码如下:



$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’);



SyntaxHighlighter.highlight();