在使用PHP substr截取中文字符串的时候,会出现乱码的情况,原因是substr函数在截取字符时是按字节来截取的,中文字符在GB2312编码时为2个字节,utf-8编码时为3个字节,所以截取指定长度的字符串时如果截断了汉字,那么返回的结果显示出来便会出现乱码。解决方法是使用mb_substr函数
如 mb _substr("aaaaa",0,3,"utf-8")
另外,strpos,strlen这几个函数也是如此,可以使用mb_strpos,mb_strlen来对中文字符串进行操作
在使用PHP substr截取中文字符串的时候,会出现乱码的情况,原因是substr函数在截取字符时是按字节来截取的,中文字符在GB2312编码时为2个字节,utf-8编码时为3个字节,所以截取指定长度的字符串时如果截断了汉字,那么返回的结果显示出来便会出现乱码。解决方法是使用mb_substr函数
如 mb _substr("aaaaa",0,3,"utf-8")
另外,strpos,strlen这几个函数也是如此,可以使用mb_strpos,mb_strlen来对中文字符串进行操作