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中文網其他相關文章!