怎样判断一个字符是中文还是英文?(在线等待)

gOODiDEA 2002-12-02 02:22:13
rt
...全文
83 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
ALAN_1999 2002-12-02
  • 打赏
  • 举报
回复
^_^
gOODiDEA 2002-12-02
  • 打赏
  • 举报
回复
谢谢!
ALAN_1999 2002-12-02
  • 打赏
  • 举报
回复
vivanboy(被迫早起的鸟儿)(★★★★★) 有这样一个回答:
<?
function checkGBK($str,$lenStart,$lenEnd){//检查是否符合规定长度的gbk汉字
$strLen=strlen($str)/2;
if($strLen>$lenEnd||$strLen<$lenStart) return false;
for($n=0;$n<strlen($str);$n+=2){
$fs=ord($str[$n]);
$ss=ord($str[$n+1]);
if(!(($fs>175&&$fs<248&&$ss>160&&$ss<255)||($fs>128&&$fs<161&&$ss>63&&$ss<255)||($fs>169&&$fs<255&&$ss>63&&$ss<161))) return false;
}
return true;
}

function checkGB2312($str,$lenStart,$lenEnd){//检查是否符合规定长度的gb2312汉字
$strLen=strlen($str)/2;
if($strLen>$lenEnd||$strLen<$lenStart) return false;
for($n=0;$n<strlen($str);$n+=2){
$fs=ord($str[$n]);
$ss=ord($str[$n+1]);
if(!($fs>175&&$fs<248&&$ss>160&&$ss<255)) return false;
}
return true;
}

//由于gbk向后兼容gb2312,扩充了一些汉字,并包括所有繁体形式的简体字,而且现在浏览器也默认是gbk,所有建议使用第一个函数checkGBK()来验证
//例:
if(checkGBK("中国人",2,5)) echo "合法";
else echo "不合法";
?>

21,882

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧