1. 程式人生 > >php自定義函數及內部函數----字符串處理函數

php自定義函數及內部函數----字符串處理函數

統計 數組 bsp 返回值 輸出 Coding 定義函數 選擇 sci

一、統計字符串

(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)

php自定義函數及內部函數----字符串處理函數