在php中提供了大量字符串操作函数,像计算字符串长度或字符串截取函数,但是他们都只能简单的计算英文字符,不能对中文混合字符串进行操作,下面我来给大家介绍截取字符串长度与计算字符串长度的方法总结.
常用的字符处理函数,代码如下:
- strstr(string,string) = strchr(,)
- strrchr(string,string)
- strpos(string,string[,int])
- strrpos(string,string)
- substr(string,int[,int])
- strlen(string)
假设:$str="这是1个字符串";这个串中包含了一个半角字符,同样执行如下代码:
if(strlen($str)>10) $str=substr($str,10);
由于原字符串$str的第10、11个字符构成了汉字“符”;执行串分割后会将该汉字一分为二,这样被截取的串就会发现乱码现象,那我们可以先来计算字符串长度,代码如下:
- <?PHP
- header('Content-type: text/html; charset=utf-8');
- $str = "在士大夫了sdfsdfcxvzv一截";
-
- $pa = '/[x{4e00}-x{9fa5}]/siu';
- preg_match_all($pa, $str, $r);
-
- $count = count($r[0]);
- echo "当前的字符串中,共有 $count 个汉字";
-
- if($count>10)
- {
-
- }
-
- ?>
|