當前位置:才華齋>設計>網頁設計>

php開發中常用的操作字串的函式說明

網頁設計 閱讀(2.91W)

1,拼接字串

php開發中常用的操作字串的函式說明

拼接字串是最常用到的字串操作之一,在PHP中支援三種方式對字串進行拼接操作,分別是圓點.分隔符{}操作,還有圓點等號.=來進行操作,圓點等號可以把一個比較長的字串分解為幾行進行定義,這樣做是比較有好處的.

2,替換字串

在PHP這門語言中,提供了一個名字叫做substr_replace()的函式,該函式的作用可以快速的完成掃描和編輯文字內容較多的字串替換功能.他的語法格式:

mixed substr_replace(mixed $string,string $replacement, int $start[,int $length])

對於上面的語法格式的說明:

string 是要檢查或者將要被替換的字串

replacement 指定要用來插入或者替換的字串

start 指定在字串的何處進行開始替換,這個引數可以取三種類型的值(正數:從字串開頭的第start個偏移量開始替換,負數,從字串結尾處的第start個偏移量開始替換,0:從字串中的第一個字元開始替換)

length指定要替換多少個字元,這個引數也可以取三種類型的值(正數:被替換的字串的長度,負數:從字串的結尾開始被替換的字串的長度,0:是插入操作,而不是替換操作);

3,計算字串

1)計算字串的長度

在PHP中,strlen()函式用來計算字串的長度並且返回該字串的長度資訊.該語法的格式如下:int strlen(string $string)格式裡面的string就是用來指定要計算長度的字串.

2)計算字串的數目

在PHP中,substr_count()函式,可以用來非常方便而且準確的確定一個指定的子字串在所提供的字串中有多少個,substr_count()函式的語法格式如下:int substr_count(string $haystack,string $needle[,int $offset=0[,int $length]])在上面的語法中設計的引數的說明如下:haystack指定要檢查的字串,needle用來指定要插入的字串,offset用來指定在字串中何處開始搜尋,預設值為0,length用來指定搜尋的長度.

在PHP中,str_word_count()函式,可以用來非常方便而且準確的確定一個某一個單詞在所提供的字串中有多少個,str_word_count()函式的語法格式如下:mixed str_word_count(string $string[,int $format=0[,string $charlist]])在上面的語法中涉及到的引數的說明如下:string用來指定要進行檢查的字串,format用來指定str_word_count()函式的返回值,這個引數的返回值可以返回三個值,分別是0,1,2.其中返回0的意思是預設值,返回找到的單詞的數目,如果返回值為1的話,那麼str_word_count()返回的就是一個數組,其中的鍵名是從0開始的連續整數,值是實際的單詞.如果format的值取3的時候,那麼str_word_count()函式的返回值就是一個數組,其中,陣列的鍵名是單詞在字串中的位置,值是實際的單詞.

4,查詢字串

字串的查詢可以分為很多種,比如說查詢子字串,查詢某個字串的位置等等,PHP分別為每個字串查詢操作提供了相應的函式.

1)查詢子字串

在PHP語言中,strstr()函式可以用來查詢子字串,該函式返回的結果為子字串第一次出現的所有的內容,strstr()函式的格式如下:string strstr(string $haystack,mixed $needle)在上面的語法中,涉及到的引數的說明如下haystack:指定被搜尋的字串,needle指定所要搜尋的字串,如果該引數是數字的話,則會匹配器該數字ASCII值的字元.在實際的應用當中,會出現要忽略字母大小寫的情況,這個時候,可以使用PHP提供的一個大小寫不敏感的查詢函式--stristr()函式,該函式的使用方法和strstr()函式的使用是一樣的.

2)查詢字串的位置

strpos()函式的功能和strstr()函式是類似的,只是返回的不是字串,而是一個字串在另外一個字串當中第一次出現的位置,strpos()的語法格式如下:int strpos(string $haystack,mixed $needle[,int $offset =0])在上面的語法中涉及到的引數的說明如下:haystack是要被搜尋的字串,needle指定要進行查詢的字串,offset是指定開始搜尋的位置,預設值為0.

strpos()函式是一個對大小寫敏感的查詢函式,但是在實際的應用過程當中往往會出現需要忽略大小寫的,這個時候可以使用PHP提供的一個對大小寫不是很敏感的查詢函式stripos(),該函式的使用方法和strpos()是一樣的.

5,比較字串

在PHP語言中,比較兩個字串的大小可以通過兩種方式來實現:使用"=="操作符比較和使用函式進行比較

1)使用"=="操作符比較兩個字串的大小

在PHP中比較兩個字串的時候,最容易的方法就是使用雙等號操作符(==).

2)使用函式比較字串的大小

在PHP中提供的strcmp()函式可以更加精確的比較兩個字串的大小,語法格式如下int strcmp(string $str1,string $str2)在上述語法中涉及到的引數的說明如下:str1 指定要進行比較的字串1,str2指定要進行比較的字串2.這個strcmp諳熟可以確保兩個字串是否完全匹配,並將比較結果以整數的形式返回,這個函式的返回值有以下三種.0:兩個字串是相等的,小於0的時候,第一個字串是小於後面的`字串的,如果返回值是大於零的,那麼就說明,前面的字串是大於後面的字串的.

除了strcmp()函式之外,PHP還提供了另外一些比較類似的比較函式,比如strncmp()函式可以選擇想要比較的字串的長度(字元個數),其語法格式如下:int strcmp(string $str1,string $str2,int $len)上面的引數說明 str1:指定要比較的第一個字串,str2:指定要比較的第二個字串len:指定每個字串用於比較的字元個數.

在比較字串的時候,有的時候需要忽略大小寫,就可以使用strcasemp()函式和strncasemp()函式,這兩個函式與區分大小寫的相應函式的使用方法是完全相同的,strcasecmp()函式和strncasecmp()兩個函式的語法格式分別如下:

int strcasecmp(string $str1,string $str2)

int strncasecmp(string $str1,string $str2,int $len)

6,複製字串

如果需要重複n次顯示一個字元或者一個字串的功能,則最簡單的實現方法就是呼叫複製函式,在PHP中可以使用str_repeat()函式實現字串的複製,這個函式的語法格式如下:string str_repeat(string $input,int $multiplier)在上述的語法中設計的引數的說明如下input指定要重複的字串,multiplier指定字串將被重複的次數.

7,翻轉字串

處理字串的操作還包括對字串進行翻轉在PHP語言中,使用strrev()函式可以實現反轉字串的功能,strrev()函式的語法格式為

string strrev(string $string)

上面的引數string就是用於指定要進行翻轉的字串.

8,切分,合併字串

把一個字串按照某種規則切分成多個字串,或者把多個字串合併成一個長的字串,是在處理字串操作的時候會經常碰到的問題.使用PHP提供的explode()函式,str_split()函式,implode()函式可以處理類似切分,合併字串的問題.

1)切分字串

explode()函式的功能就是用指定的分隔符把字串切分成陣列,explode()函式的語法格式如下:array explode(string $delimiter,string $string[,int $limit])在上面的語法中涉及到的引數的說明如下:delimiter:指定在哪裡分隔字串,string:指定要進行分割的字串,limit:指定所返回的陣列元素的最大數目,最後的子塊將會包含string的剩餘部分.

str_split()函式的作用是能夠將一個字串分割成等長度的多個子字串_split()函式的語法格式如下:array str_split(string $string[,int $split_length=1])上面的語法中的引數說明如下:string:指定要分割的字串,split_length:指定每個陣列元素的長度,預設值為"1".

2)合併字串

implode()函式的功能是將陣列的元素連線起來成為字串,implode()函式的語法格式如下:string implode([string $glue],array $pieces)在上述的語法中涉及到的引數的說明如下:glue()指定陣列元素之間放置的內容,預設值為""(表示空格字串)pieces指定要合併為字串的陣列.呼叫implode()函式可以根據引數所限制的條件獲取一個新的字串,達到合併字串的目的.

join()是implode()函式的別名,兩個函式的用法是完全一樣的,需要強調的是,雖然引數glue是可以選的,但是為了使程式擁有更好的相容性,推薦使用兩個引數.

總結一下字串的相關操作方法:

1)printf()函式:可以對字串進行格式化操作

2)sprintf()函式:可以對字串進行格式化操作,與printf()函式的區別就是需要使用echo才能將格式化後的字串顯示輸出.

3)nl2br()函式:可以將字串中的換行符"n"轉換為HTML中的"
"後顯示出來.

4)wordwrap()函式:指定從某列字元進行強制換行

5)strtolower()函式:該函式實現的功能是將字串中的所有的字元全部轉換為小寫字元

6)strtoupper()函式:該函式的作用就是將字串中的所有的字元全部轉換為大寫的字元

7)ucwords()函式:該函式的作用就是將字串中所有的首字元全部轉換為大寫字元

8)substr_replace()函式:可以快速完成掃描並且編輯文字內容較多的字串的功能

9)strlen()函式:可以計算字串的長度並且返回該字串的長度

10)substr_count()函式:可以確定一個字串在所提供的字串中有多少個

11)str_word_count()函式,可以確定一個字串中某個單詞的出現次數.

12)strstr()函式,可以用來查詢子字串,該函式的返回結果為子字串第一次出現後的所有內容

13)strpos()函式,功能和strstr()函式是類似的,只是返回的不是字串,而是一個字串在另一個字串中第一次出現的位置.

14)strcmp()函式,該函式的功能可以精確的比較兩個字串的大小

15)strncmp()函式,可以選擇要比較的字串的長度(字元個數)

16)strcasecmp()函式,可以在忽略大小寫的時候,對兩個字串進行比較

17)strncasecmp()函式,可以在忽略大小寫的前提下,對兩個字串時候進行長度或者字元數目的比較.

18)str_repeat()函式,重複n次顯示一個字元或者字串的功能

19)strrev()函式,提供對字串進行翻轉的操作

20)explode()函式,提供了將某個字串切分為多個字串的功能,指定分隔符吧字串切分成陣列.

21)str_split()函式,能夠將一個字串分割成等長度的多個子字串

22)implode()函式,將陣列的元素連線起來成為字串

23)join()函式,使用方法與implode()函式是一摸一樣的,它的作用也是將陣列元素連線起來成為一個字串