首页  >  文章  >  后端开发  >  php怎么判断字符串是中文还是数字

php怎么判断字符串是中文还是数字

藏色散人
藏色散人原创
2023-01-29 09:32:093760浏览

php判断字符串是中文还是数字的方法:1、通过“if (preg_match("/^[\x7f-\xff]+$/", $str)){...}”判断是否是中文;2、通过“function checkStr($str){...}”方法判断字符串类型即可。

php怎么判断字符串是中文还是数字

本教程操作环境:Windows10系统、PHP8.1版、DELL G3电脑

php怎么判断字符串是中文还是数字?

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 &#39;你输入的为中英文数字的并合体哦!&#39;.&#39;<br>&#39;;
echo "长度:".strlen($str);
}
/ **
下面这两个方法是用来判断是否是英文汉字和数字组成的字符串,
或者全部是中文组成的字符串 用的变量$str还是本文开头的变量
*/
if (preg_match_all("/^([\x81-\xfe][\x40-\xfe])+$/", $str, $match)) {
echo &#39;全部是汉字&#39;;
} else {
echo &#39;不全是汉字&#39;;
}
if (preg_match("/([\x81-\xfe][\x40-\xfe])/", $str, $match)) {
echo &#39;含有汉字&#39;;
} else {
echo &#39;不含有汉字&#39;;
}
/**
此为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=&#39;&#39;;
$a=ereg(&#39;[&#39;.chr(0xa1).&#39;-&#39;.chr(0xff).&#39;]&#39;, $str);
$b=ereg(&#39;[0-9]&#39;, $str);
$c=ereg(&#39;[a-zA-Z]&#39;, $str);
if($a && $b && $c){ $output=&#39;汉字数字英文的混合字符串&#39;;}
elseif($a && $b && !$c){ $output=&#39;汉字数字的混合字符串&#39;;}
elseif($a && !$b && $c){ $output=&#39;汉字英文的混合字符串&#39;;}
elseif(!$a && $b && $c){ $output=&#39;数字英文的混合字符串&#39;;}
elseif($a && !$b && !$c){ $output=&#39;纯汉字&#39;;}
elseif(!$a && $b && !$c){ $output=&#39;纯数字&#39;;}
elseif(!$a && !$b && $c){ $output=&#39;纯英文&#39;;}
return $output;
}
echo checkStr(&#39;5爱u&#39;);

推荐学习:《PHP视频教程

以上是php怎么判断字符串是中文还是数字的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn