按照上面的写就是了
如果用substr来写的话 utf-8的格式一个中文占3个长度gbk和gb2312一个中文占2个长度
而mb_substr来写的话 不管什么格式 只要是占一个位置 都是算作一个长度
但是用mb_substr必须注意几点
在php.ini中 就是php的配置文件中必须开启mb_substr这个符号 就是把前面份额分号给去掉
还有就是后面必须写上你的编码格式如“utf-8”或者gb2312之类的
如果你想用这个mb_substr的话 并且那个字符串中还有英文的话那是绝对会出错的
至于写的话 楼主自己写一下吧 查一下文档不久OK了吗 还要别人写出来 这点自学能力都没有
PHP对中文字符串的处理一直困扰于刚刚接触PHP开发的新手程序员。下面简要的剖析一下PHP对中文字符串长度的处理:
(1)PHP自带的函数如strlen()、mb_strlen()都是通过计算字符串所占字节数来统计字符串长度的,一个英文字符占1字节;
(2)中文则不然,做中文网站一般会选择两种编码:gbk/gb2312或是utf-8。utf-8能兼容更多的字符,所以受到很多站长的喜爱。gbk与utf-8对中文的编码不同,导致中文在gbk与utf-8编码下所占字节也有差异。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)