php自定义函数及内部函数----字符串处理函数

一、统计字符串

(1)strlen() 统计字符串长度

函数返回值为整形,表示字符串长度。若返回值为0,表示该字符串为空。该函数对待一个UTF8的中文字符,处理为3个字节长度。

echo strlen("xiaolin!");// 输出:8

echo strlen("小林!");  // 输出:7

(2)mb_strlen() 统计中文字符串的长度

mb_strlen ( string $str [, string $encoding = mb_internal_encoding() ] )
$str 要检查长度的字符串
$encoding,可指定字符编码,如省略则使用内部字符编码
返回值:返回具有encoding编码的字符串str包含的[字符数],多字节的字符被计为 1

$str='我是小林zi';
echo strlen($str).'<br>';// 在strlen计算中,对待一个UTF8的中文字符,处理为3个字节长度,3 * 4 + 2 = 14
echo mb_strlen($str,'utf8').'<br>';// 当mb_strlen的内码选择为UTF-8的时候,则会将中文字符当成一个字符,即为 1 * 4 + 2 = 6
echo mb_strlen($str,'gbk').'<br>';// 当mb_strlen的内码选择为gbk的时候,一个中文字符当成1.5个字符来处理来处理, 1.5 * 4 + 2 = 8

(3)count_chars() 统计一个字符串中的字符出现频率。

count_chars(string,mode)

mode 可选。规定返回模式。默认是 0。以下是不同的返回模式:

  • 0 - 数组,ASCII 值为键名,出现的次数为键值
  • 1 - 数组,ASCII 值为键名,出现的次数为键值,只列出出现次数大于 0 的值
  • 2 - 数组,ASCII 值为键名,出现的次数为键值,只列出出现次数等于 0 的值
  • 3 - 字符串,带有所有使用过的不同的字符
  • 4 - 字符串,带有所有未使用过的不同的字符
print_r(count_chars($str,1)); //Array ( [32] => 1 [33] => 1 [72] => 1 [87] => 1 [100] => 1 [101] => 1 [108] => 3 [111] => 2 [114] => 1 )
print_r(count_chars($str,3));  // !HWdelor

二、字符串转化

(1)trim():去除空格;
         ltrim():只从开始处去除空格;
         rtrim():只从结尾处去除空格。

    trim(string,charlist)

猜你喜欢

转载自www.cnblogs.com/xlzfdddd/p/10074097.html