> 백엔드 개발 > PHP 튜토리얼 > php判断字符串是否全英文,纯中文,中英文组合的方法

php判断字符串是否全英文,纯中文,中英文组合的方法

WBOY
풀어 주다: 2016-06-20 13:01:50
원래의
2441명이 탐색했습니다.

有时候我们需要对字符串进行对比的时候会先对字符串使用strtolower将字符串转为小写,但是当遇到字符串中包含中文的情况下,这种情况下会出现问题,中文字符串经过strtolower转换后会变为乱码,搜索了一番确定了这为php系统函数的一个bug,但问题还是需要解决,下面经过摸索得出两种解决办法。

(1)第一种是检测字符串中是否包含中文,如果包含中文就不进行小写转换比较了。

这里总结了一个函数,判断一个字符串是否是由纯英文,纯中文或者中英文混合组成。

<p>/*</p>*function:检测字符串是否由纯英文,纯中文,中英文混合组成<br />*param string<br />*return 1:纯英文;2:纯中文;3:中英文混合<br />*/<br />function check_str($str=''){<br />	if(trim($str)==''){<br />		return '';<br />	}<br />	$m=mb_strlen($str,'utf-8');<br />	$s=strlen($str);<br />	if($s==$m){<br />		return 1;<br />	}<br />	if($s%$m==0&&$s%3==0){<br />		return 2;<br />	}<br />	return 3;<br /><p>}</p>
로그인 후 복사

(2)使用urlencode将字符串进行编码之后,然后再比较,比第一种方法更全面一些。具体过程为:

strtolower(urlencode($str));
로그인 후 복사


관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 이슈
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿