• 技术文章 >后端开发 >PHP问题

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

    藏色散人藏色散人2023-01-29 09:32:09原创93

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

    本教程操作环境: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 '你输入的为中英文数字的并合体哦!'.'<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');

    推荐学习:《PHP视频教程

    以上就是php怎么判断字符串是中文还是数字的详细内容,更多请关注php中文网其它相关文章!

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:php
    上一篇:php转utf-8中文乱码怎么办 下一篇:自己动手写 PHP MVC 框架(40节精讲/巨细/新人进阶必看)

    相关文章推荐

    • php怎么判断是否为整数字符串• php怎么将数字转为字符串• php怎么将字符串转化为数字• php字符串分割失败怎么办
    1/1

    PHP中文网