php汉字判断
㈠ php判断字符串里的汉字
<?php
header("Content-Type:text/html;charset=utf-8");//截取utf8字符串
function utf8Substr($str, $from, $len){
return preg_replace('#^(?:[\x00-\x7F]|[\xC0-\xFF][\x80-\xBF]+){0,'.$from.'}'.
'((?:[\x00-\x7F]|[\xC0-\xFF][\x80-\xBF]+){0,'.$len.'}).*#s',
'$1',$str);
}//拆分字符串里的每个元素并输出
function func_test($str){
$len = strlen($str);
$len_new = 0;
for($i=0;$i<$len;++$i){
++$len_new;
if(ord(substr($str, $i, 1)) > 0xa0) {
++$i;
++$i;
}
}
for($i=0;$i<$len_new;++$i){
$arr[] = utf8Substr($str,$i,1);
}
echo implode(",",$arr);
}$str='逸12你好o是否o暗s示《<';
func_test($str);
?>这个方法在utf-8编码的文件下可以实现你要的功能!
㈡ PHP判断是中文还是英文
/*
判断输入是否是纯数字,英文,汉字等
利用php的mb_strlen和strlen函数就可以轻松得知字符串的构成是全英文、中英混合、全中文。
1: 如果strlen返回的字符长度和mb_strlen以当前编码计算的长度一致,则为纯英文字符串
2: 如果strlen返回的字符长度和mb_strlen以当前编码计算的长度不一致,并且strlen返回值和mb_strlen返回值求余后得0 则为全汉字
3: 如果strlen返回的字符长度和mb_strlen以当前编码计算的长度不一致,并且strlen返回值和mb_strlen返回值求余后不为0 则为中英混合
*/
<?php
$str = "123456abc汉字";
$x = mb_strlen($str, 'gb2312');
$y = strlen($str);
echo "-----------$str----------<br>";
echo "x: ".$x."<br>";
echo "y: ".$y."<br>";
?>
㈢ PHP判断是不是包含某个汉字
strstr:
返回一个从被判断字符开始到结束的字符串,如果没有返回值,则不包含.
stristr:
它和strstr的使用方法完全一样.唯一的区别是stristr不区分大小写.
$email
=
‘
user中example.com’;
$domain
=
strstr($email,
‘中’);
echo
$domain;
//
prints
中example.com
㈣ PHP判断字符串中是否含有中文
一,判断全是中文
$str="'324是";
if(!eregi("[^\x80-\xff]","$str")){
echo "全是中文";
}else{
echo "不是";
}
二,判断含有中文
$str = "中文";
if (preg_match("/[\x7f-\xff]/", $str)) {
echo "含有中文";
}else{
echo "没有中文";
}
或
$pattern = '/[^\x00-\x80]/';
if(preg_match($pattern,$str)){
echo "含有中文";
}else{
echo "没有中文";
}
如果还有问题可以去后盾网论坛问题求助专区,希望我的回答对你有帮助
㈤ php 如何判断字符是汉字还是英文
常见的就是用strlen()和mb_strlen()函数
strlen($str); 中文utf8占3个字符
mb_strlen($str,'utf8'); 中文utf8占1个字符
可以根据strlen()和mb_strlen()返回结果,两者比较判断是汉字、英文还是中英混合
strlen() 等于 mb_strlen() 全英
strlen() 对 mb_strlen() 取余为0 全汉
需要注意的是,mb_strlen并不是PHP核心函数,使用前需要确保在php.ini中加载了php_mbstring.dll,即确保“extension=php_mbstring.dll”这一行存在并且没有被注释掉,否则会出现未定义函 数的问题。
㈥ PHP判断是不是包含某个汉字
strstr: 返回一个从被判断字符开始到结束的字符串,如果没有返回值,则不包含. stristr: 它和strstr的使用方法完全一样.唯一的区别是stristr不区分大小写.
$email = ‘ user中example.com’;
$domain = strstr($email, ‘中’);
echo $domain;
// prints 中example.com
㈦ PHP检查字符串是否全部是中文,用于汉字姓名判断
当做一些电商网站的时候,会遇到很多时候购物要实名认证,对于国内的人来说,输入姓名的时候都要输入汉字。汉字而不是中文,为什么这么说。“。”这个也是中文,所以说汉字比较准确一点。
分析
还有一些少数民族里面含有·这个符号。
所以算法的核心就是全部为中文或者全部为中文并且有·这个符号的两种情况才允许姓名通过验证。
代码如下:
㈧ 如何判断字符是数字还是汉字 php
程序:
$a = '1个汉字是3个字符,abcd是四个字符!';
//$b = strlen($a);
$c = mb_strlen($a);
for ($i=0; $i < $c; $i++) {
$d = mb_substr($a,$i,1);
if ((strlen($d)/3) == mb_strlen($d)) {
echo '“'.$d.'” 是汉字<br>';
}else{
$e = intval($d);
if ($e) {
echo '“'.$d.'” 是数字<br>';
}else{
echo '“'.$d.'” 不是汉字也不是数字<br>';
}
}
}
结果:
“1” 是数字
“个” 是汉字
“汉” 是汉字
“字” 是汉字
“是” 是汉字
“3” 是数字
“个” 是汉字
“字” 是汉字
“符” 是汉字
“,” 是汉字
“a” 不是汉字也不是数字
“b” 不是汉字也不是数字
“c” 不是汉字也不是数字
“d” 不是汉字也不是数字
“是” 是汉字
“四” 是汉字
“个” 是汉字
“字” 是汉字
“符” 是汉字
“!” 是汉字
㈨ php判断是汉字还是数字还是字母
php可以判断汉子,数字,字母,字符串等.只要你不是乱码,一般都可以判断
㈩ php怎么识别是不是汉字
将字符串分割成字符,让后将每个字符转换成ascii码
strasc=ord("字符")
if (strasc>=0 && strasc<=255)
{
echo "是汉字"
}