PHP中判断字符串是否含有中文

PHP中判断字符串是否含有中文

1.测试一

$str='中文测试';

if(preg_match_all("/^([\x81-\xfe][\x40-\xfe])+$/",$str,$match)){

echo'全部是汉字';

}else{

echo'不全是汉字';

}

当$str='中文测试';时输出"全部是汉字";

当$str='中a文3测试';时输出"不全是汉字";

应用说明:当某个地方要求用户输入的内容必须全部是中文时,这个就派上用场了。

2.测试二

$str='中a文3测试';

if(preg_match("/([\x81-\xfe][\x40-\xfe])/",$str,$match)){

echo'含有汉字';

}else{

echo'不含有汉字';

}

当$str='中a文3测试';时输出"含有汉字";

当$str='a345';时输出"不含有汉字";

应用说明:当某个地方要求用户输入的内容中必须含有中文时(而不一定全部是中文),这个就派上用场了。

经测试,上述变量$str的内容与utf8还是gbk编码无关,判断结果均是一样的。