方法一:
";echo substr($str,0,12)."
";echo mb_strlen($str,"UTF8")."
";echo mb_substr($str,0,12,"UTF8")."
";?>
显示结果如下
34
107sadf网�
16
107sadf网站工作室
strlen()函数返回字符串所占的字节长度,一个英文字母、数字、各种符号均占一个字节,它们的长度均为1。一个中文字符占两个字节,所以一个中文字符的长度是2,对于一个UTF-8的中文字符,会把它当做长度为3来处理。
怎么准确的计算字符串的长度呢?这里,得引入另外一个函数mb_strlen()。mb_strlen()函数的用法与strlen()几乎一摸一样,只是多了一个指定字符集编码的参数。函数原型为:
int mb_strlen(string string_input, string encode);
最后结果显示为: