1. 程式人生 > >【PHP基礎知識】——常用字串處理函式總結

【PHP基礎知識】——常用字串處理函式總結

一、概要

我們知道,字串操作是主流web程式語言的基礎,也是在日常開發中不可或缺的一項。PHP處理字串的能力非常強大,方法也是多種多樣。文章列舉了一些PHP中常見的字串處理方法。

二、常用字串處理方法

1、判斷一個字串的長度:intstrlen ( string $string )
判斷一箇中文字串長度:mb_strlen()
判斷一個字串由多少個單片語成(通常以空格劃分單詞):str_word_count()
注:mb_strlen並使用前需要確保在php.ini中載入了php_mbstring模組

2、字串擷取和查詢

stringsubstr ( string $string , int $start

 [, int $length ] )

:從字串中獲取其中的一部分

stringstrstr ( string $haystack , mixed $needle [, bool $before_needle = false ] )

:查詢字串在另一個字串中第一次出現的位置,並返回從該位置到字串結尾的所有字元

subchr():同strstr()

stristr():同strstr(),但不區分大小寫

stringstrrchr ( string $haystack , mixed $needle )——查詢字串在另一個字串中最後一次出現的位置,並返回從該位置到字串結尾的所有字元
strpos():查詢字串中子串的位置,返回的位置從下標0開始
strrpos():逆向查詢字串中子串的位置。

3、字串轉化
trim():去除空格;
ltrim():只從開始處去除空格;
rtrim():只從結尾處去除空格;
nlzbr():以HTML格式進行轉化(自動換行);
sprintf():返回一個格式化了的字串;
strtoupper():將字串轉化為大寫;
strtolower():將字串轉化為小寫;
substr_count(‘原字串’,’待測片段’):測試字串出現頻率(類似正則表示式);
strrev():逆置字串。

4、字串替換

mixedsubstr_replace ( mixed $string , mixed $replacement , mixed $start [, mixed $length ] )

:該函式以其他字元替換字串中的一些字元(區分大小寫),返回字串或陣列


5、字串比較

intstrcmp ( string $str1 , string $str2 )

:如果str1小於str2,返回<0;如果str1大於str2,返回>0;如果兩者相等,返回0。

strcasecmp():同strcmp(),但不區分大小寫。
‘==’號:判斷兩個字串變數數值是否相等(型別不同時會進行自動轉化)。
‘===’號:判斷兩個字串變數的型別和數值是否相等。

intstrnatcmp ( string $str1 , string $str2 )

:使用“自然順序”演算法比較字串,返回值格式同strcmp()。

strnatcasecmp():同strnatcmp()但不區分大小寫。

注:'=='號比較時要注意型別轉換是否會導致結果不同於預期比較結果,如0和空字串比較是會將空字串轉為0產生相等結果的。

6、字串轉陣列
explode(‘標誌’,$字串):將字串以標誌劃分為若干塊組成的陣列;
implode(‘標誌’,$字串):將若干塊組成的陣列以標誌合併為字串;

三、其他

1、判斷一個字串是否在另一個字串中有兩個函式:strstr()和strpos(),strstr()與strpos()有一點不同是,該函式的返回值是false或者字串的一部分。如果單純的判斷兩個字串的包含關係,最好使用strpos,因為速度更快、耗費記憶體更少。

2、關於==號判斷字串大小的一些說明