PHP字符串處理_第1頁
PHP字符串處理_第2頁
PHP字符串處理_第3頁
PHP字符串處理_第4頁
PHP字符串處理_第5頁
已閱讀5頁,還剩23頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、PHP字符串處理姓 名:電 話:60889797Q Q:MAIL :姓 名:馬明電 話:60889797Q Q:44562586MAIL :字符串字符串的定義字符串的處理函數(shù)字符串的定義 string是一系列字符。在 PHP 中,字符和字節(jié)一樣,也就是說,一共有 256 種不同字符的可能性。這也暗示 PHP 對 Unicode 沒有本地支持。注: 一個(gè)字符串變得非常巨大也沒有問題,PHP 沒有給字符串的大小強(qiáng)加實(shí)現(xiàn)范圍,所以完全沒有理由擔(dān)心長字符串。語法:字符串可以用三種字面上的方法定義: 單引號 和 雙引號 “” 定界符 單引號 指定一個(gè)簡單字符串的最簡單的方法是用單引號()括起來。 例如:

2、 $str1=phpchina; /字符串str1賦值 用于單引號字符串的轉(zhuǎn)義序列解釋為一個(gè)單引號,解釋為一個(gè)反斜杠()。任何其他反斜線的出現(xiàn)僅僅被解釋為一個(gè)反斜杠。 注: 和其他兩種語法不同,單引號字符串中出現(xiàn)的變量和轉(zhuǎn)義序列不會被變量的值替代。實(shí)例:?php$name=Tim OReilly;/轉(zhuǎn)義一個(gè)單引號echo $name.;$path=C:WINDOWS;/轉(zhuǎn)義一個(gè)反斜杠echo $path.;$nope=n;/不是轉(zhuǎn)義echo $nope;$name=world;$str=Hello,$name;/不會替代變量值echo $str;?雙引號如果用雙引號()括起字符串,PHP 懂得

3、更多特殊字符的轉(zhuǎn)義序列: 轉(zhuǎn)義字符: ”雙引號 n換行 r回車 t制表符 反斜杠 $ 美元符 左大括號 右大括號 左中括號 右中括號此外,如果試圖轉(zhuǎn)義任何其它字符,反斜線本身也會被顯示出來!雙引號字符串最重要的一點(diǎn)是其中的變量名會被變量值替代。?php$aa=aa; print(aa is aa.); print(aa is aa.); print(aa is aa.); print(aa is aa.); print(“aa is $aa”.“”);/變量被值替換print(“aa is $aa”.“”);/大括號分離變量 print(aa is $aa.); print(aa is .$a

4、a); ? 定界符另一種給字符串定界的方法使用定界符語法:(“”)。應(yīng)該在 之后提供一個(gè)標(biāo)識符,然后是字符串,然后是同樣的標(biāo)識符結(jié)束字符串。結(jié)束標(biāo)識符必須從行的第一列開始。定界符文本表現(xiàn)的就和雙引號字符串一樣,在定界符文本中不需要轉(zhuǎn)義引號。?php$my_quote=打印字符串(字符串的輸出)函數(shù)echo( ) 語法: echo string arg1, string argn.; 它是語言結(jié)構(gòu),不是真正的函數(shù)。它和print的區(qū)別在于,可以接受多個(gè)參數(shù)。例如:echo “first”,”second”,”third”;/合法 echo (“hello”,”world!”);/解析錯(cuò)誤prin

5、t( ) 語法: int print(string arg); 本函數(shù)輸出字符串。若成功則返回 1,失敗則返回 0。例如傳輸中途客戶的瀏覽器突然掛了,則會造成輸出失敗的情形。例如:if(!print(“Hello,world”) die(“youre not listening to me!”); 字符串處理函數(shù)修整字符串 函數(shù):ltrim( ) 語法: string ltrim(string str); 返回值: 字符串 本函數(shù)用來刪去字符串中的前導(dǎo)空格 (whitespace)。 函數(shù):rtrim( ) (還有個(gè)別名:chop()語法: string rtrim(string str);

6、返回值: 字符串 本函數(shù)用來刪去字符串中的后綴空格 (whitespace)。 函數(shù):trim( ) 截去字符串首尾的空格。 語法: string trim(string str); 返回值: 字符串 本函數(shù)返回字符串 string 首尾的空白字符去除后的字串。 函數(shù): strrev( ) 顛倒字符串。將字符串前后顛倒。 語法: string strrev(string string); 返回值: 字符串 函數(shù): strtolower( ) 語法: string strtolower(string str); 返回值: 字符串 本函數(shù)將字符串 str 全部變小寫字符串。 函數(shù): strtoup

7、per( ) 語法: string strtoupper(string str); 返回值: 字符串 本函數(shù)將字符串 str 全部變大寫字符串。 函數(shù):ucfirst( ) 將字符串第一個(gè)字符改大寫。 語法: string ucfirst(string str); 返回值: 字符串 本函數(shù)返回字符串 str 第一個(gè)字的字首字母改成大寫。 函數(shù):ucwords( ) 將字符串每個(gè)字第一個(gè)字母改大寫。 語法: string ucwords(string str); 返回值: 字符串 本函數(shù)返回字符串 str 每個(gè)字的字首字母全都改成大寫。格式化字符串以便顯示 函數(shù):sprintf() 將字符串格式

8、化。 語法: string sprintf(string format, mixed args.); 返回值: 字符串 本函數(shù)用來將字符串格式化。參數(shù) format 是轉(zhuǎn)換的格式,以百分比符號 % 開始到轉(zhuǎn)換字符為止。轉(zhuǎn)換說明的類型碼如下: b 整數(shù)轉(zhuǎn)成二進(jìn)位。 c 整數(shù)轉(zhuǎn)成對應(yīng)的 ASCII 字符。 d 整數(shù)轉(zhuǎn)成十進(jìn)位。 f 單倍精確度數(shù)字轉(zhuǎn)成浮點(diǎn)數(shù)。 o 整數(shù)轉(zhuǎn)成八進(jìn)位。 s 轉(zhuǎn)成字符串。 x 整數(shù)轉(zhuǎn)成小寫十六進(jìn)位。 X 整數(shù)轉(zhuǎn)成大寫十六進(jìn)位。 函數(shù):printf( ) 輸出格式化字符串。 語法: int printf(string format, mixed args.); 返回值: 整

9、數(shù) 本函數(shù)依參數(shù) format 指定的內(nèi)容格式將字符串格式化,同sprintf()。 字符串的分割與拼裝 explode - 使用一個(gè)字符串分割另一個(gè)字符串 語法:array explode ( string separator, string string , int limit )此函數(shù)返回由字符串組成的數(shù)組,每個(gè)元素都是 string 的一個(gè)子串,它們被字符串 separator 作為邊界點(diǎn)分割出來。如果設(shè)置了 limit 參數(shù),則返回的數(shù)組包含最多 limit 個(gè)元素,而最后那個(gè)元素將包含 string 的剩余部分。 例如:$pizza = piece1 piece2 piece3;$

10、pieces = explode( , $pizza);echo $pieces0; / piece1echo $pieces1; / piece2 implode()用一組較小的字符串創(chuàng)建一個(gè)大字符串。格式:string implode ( string glue, array pieces ) 第一個(gè)參數(shù)glue是放在第二個(gè)參數(shù)pieces的元素之間的字符串??梢韵裣旅孢@樣重建簡單的逗號分隔的字符串。例如:$array = array(lastname, email, phone);$comma_separated = implode(“,”, $array);echo $comma_se

11、parated; / 顯示lastname,email,phone字符串的其他處理函數(shù) 函數(shù): strcmp( ) 字符串比較。 語法: int strcmp(string str1, string str2); 返回值: 整數(shù) 本函數(shù)用來比較兩字符串的大小。返回負(fù)數(shù)表示 str1 小于 str2;返回正數(shù)表示 str1 大于 str2;返回零表示二字符串相同。 函數(shù): strlen( ) 取得字符串長度。 語法: int strlen(string str); 返回值: 整數(shù) 本函數(shù)返回指定的字符串長度。 函數(shù):substr( ) 取部份字符串。 語法: string substr(stri

12、ng string, int start, int length); 返回值: 字符串 本函數(shù)將字符串 string 的第 start 位起的字符串取出 length 個(gè)字符,若省略參數(shù) length,則取到字符串末尾 。若 start 為負(fù)數(shù),則從字符串尾端往前開始提取。如果length為整數(shù),表示返回length個(gè)字符,若為負(fù)數(shù),則表示取到倒數(shù)第 length 個(gè)字符。 函數(shù): strstr( ) 別名:strchr( ) 返回字符串中某字符串開始處至結(jié)束的字符串。 語法: string strstr(string haystack, string needle); 返回值: 字符串 本函

13、數(shù)將 needle 最先出現(xiàn)在 haystack 處起至 haystack 結(jié)束的字符串返回。若找不到 needle 則返回 false。 函數(shù): strrchr() 取得某字符最后出現(xiàn)的位置。 語法: string strrchr(string haystack, string needle); 本函數(shù)用來尋找字符串 haystack 中的字符 needle 最后出現(xiàn)位置,并將此位置起至字符串 haystack 結(jié)束之間的字符串返回。若沒有找到 needle 則返回 false。 函數(shù):strpos() 尋找字符串中某字符最先出現(xiàn)的位置。默認(rèn)從 0 開始。 語法: int strpos(st

14、ring haystack, string needle, int offset); 本函數(shù)用來尋找字符串 haystack 中的字符 needle 最先出現(xiàn)的位置。若找不到指定的字符,則返回 false 值。參數(shù) offset 可省略,用來表示從 offset 開始找。 函數(shù):strrpos( ) 尋找字符串中某字符最后出現(xiàn)的位置。 語法: int strrpos(string haystack, char needle); 返回值: 整數(shù) 本函數(shù)用來尋找字符串 haystack 中的字符 needle 最后出現(xiàn)的位置。若找不到指定的字符,則返回 false 值。字符串的填補(bǔ) str_pad

15、()函數(shù),可以用于一些敏感信息的保護(hù),如金額的打印。 有4個(gè)參數(shù)。第一個(gè)參數(shù)指明要處理的字符串,第二個(gè)參數(shù)給定處理后字符串的長度。第三個(gè)字符串給出填補(bǔ)所用的字符串,默認(rèn)使用空格進(jìn)行填補(bǔ)。最后一個(gè)參數(shù)指定填補(bǔ)的方向,它有3個(gè)可選值: STR_PAD_LEFT 字符串左添補(bǔ) STR_PAD_RIGHT 字符串右添補(bǔ) STR_PAD_BOTH 字符串兩端添補(bǔ)字符串的比較 PHP中,有多種方法可以對字符串進(jìn)行比較,除了可以直接使用條件運(yùn)算符(, =)加以比較外。 按字節(jié)進(jìn)行字符串的比較 strcmp();(整個(gè)比較是否相同) strncmp();(指定比較長度的字符串比較) strcasecmp();

16、 (不區(qū)分大小寫的全串比較) 按自然排序法時(shí)對字符串的比較 strnatcmp(); 字符串的模糊比較 similar_text(); (返回相似字符串的個(gè)數(shù))字符串的替換 str_replace() 字符串替換,三種替換方式 str_replace(string $search, string $replace, string $str); str_replace(array $search, string $replace, string $str); str_replace(array $search, array $replace, string $str);字符串翻譯 另外一個(gè)重要字

17、符串替換函數(shù)是strtr(),也叫字符串翻譯函數(shù)。 strtr()函數(shù), 也有兩種調(diào)用形式: strtr(string $str, string $from, string $to) strtr(string $str, array $replace_pairs)處理HTML 出于人性化的設(shè)計(jì)考慮,通常,在接受了表單數(shù)據(jù)之后,可能需要立即顯示一下,以便用戶決定下一步繼續(xù)還是返回。 HTML實(shí)體的處理 htmlentities(); (指定轉(zhuǎn)換模式和字符集編碼)ENT_COMPAT(默認(rèn)):指定轉(zhuǎn)換雙引號但是保留單引號ENT_QUOTES:表示同時(shí)轉(zhuǎn)換雙引號和單引號ENT_NOQUOTES:表示兩個(gè)都不轉(zhuǎn)換 htmlspecialchars(); (把等特殊符號轉(zhuǎn)換成實(shí)體<>) 引號的處理 addslashes(); (把 ” NULL(0) 4個(gè)字符前添加顯示) stripslashes(); (是addslashes的反函數(shù),顯示轉(zhuǎn)移后的字符) HTMl標(biāo)簽的清理 strip_tags();(清理字符串中的HTML超文本字符)處理URL除了對HTML文字的處理, 在WEB開發(fā)時(shí)還要對URL地址進(jìn)行處理。處理URL主要包括:對URL字符串的解析 parse

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論