作业帮 > 综合 > 作业

ord(substr($str, $i, 1)) > 0xa0的问题

来源:学生作业帮 编辑:大师作文网作业帮 分类:综合作业 时间:2024/11/06 22:32:26
ord(substr($str, $i, 1)) > 0xa0的问题
你好,在知道看到你对这个问题的回答,我想追问一下,为什么ASCII>0xa0了就是汉字了呢?
ord(substr($str, $i, 1)) > 0xa0的问题
你这个代码是在哪里看到的?不是特别准确
汉字编码为两个字节表示一个汉字
一般采用gb2312或者gbk或者utf8或者其他类似的字符集
无论是哪种字符集,只要不是unicode编码的,为了兼容非汉字字符(英文字符或标点)显示,都有一个约定:
汉字编码的第一个字节为超过0x80的值
所以准确的判断应该是大于0x80
中间有一部分特殊符号,后续为常用汉字编码,而常用汉字编码从0xaa开始
所以如果要判断是否为常用汉字 可以用0xaa判断
具体编码 你可以搜索一下汉字编码规范
或者用windows自带的charmap.exe查看所有可用编码
再问: 这个代码是在php开发实战宝典这本书的5.5.1的代码中,当时不理解为什么是0xa0,因为我对编码没有了解,所以就去百度了,发现都没有很好的解释这个问题,就追问了一下别人。谢谢你的回答,基本懂了,你的回答里面的常用汉字编码应该是从0xa0开始的吧。$content=str_replace("[_[","