php重要知識點總結(PHP網絡開發必背)_第1頁
php重要知識點總結(PHP網絡開發必背)_第2頁
php重要知識點總結(PHP網絡開發必背)_第3頁
已閱讀5頁,還剩24頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、PHP開發必用知識點總結,函數一覽,開發必背魔術方法_construct()當實例化一個對象的時候,這個對象的這個方法首先被調用。_destruct()當刪除一個對象或對象操作終止的時候,調用該方法。_get()當試圖讀取一個并不存在的屬性的時候被調用。_set()當試圖向一個并不存在的屬性寫入值的時候被調用。_call()當試圖調用一個對象并不存在的方法時,調用該方法。_toString()當打印一個對象的時候被調用_clone()當對象被克隆時,被調用_isset()_un set()_autoload($class name)_sleep()_wakeup()系統常量_FILE_ 當前文

2、件名_LINE_當前行數_FUNCTION_ 當前函數名_CLASS_當前類名_METHOD_當前對象的方法名PHP_OS當前系統PHP_VERSION php 版本DIRECTORY_SEPARATOR 根據系統決定目錄的分隔符八PATH_SEPARATOR根據系統決定環境變量的目錄列表分隔符;:E_ERROR 1E_WARNING 2E_PARSE4E_NOTICE 8M_PI 3.141592$_SERVER$_ENV執行環境提交至腳本的變量$_GET$_POST$_REQUEST$_FILES$_COOKIE$_SESSION$_GLOBALS輸出echo /Output one or

3、 more stri ngsprint /Output a stri ngprint_r()II打印關于變量的易于理解的信息。var_dump()/打印變量的相關信息var_export()/輸出或返回一個變量的字符串表示prin tf("%.1f",$ num) /Output a formatted stri ngspri ntf() /Return a formatted stri ng編碼轉換stri ng mb_con vert_e ncod ing ( stri ng $str , stri ng $to_e ncodi ng , mixed $from_e n

4、codi ng ) icon v();時間date_default_timezo ne_set("PRC");date("Y-m-d H:i:s");time();date("Y-m-d H:i:s",time()+3600)ini_set('date.timezone', 'PRC');msec sec microtime() 以秒返回時間戳explode(' ', microtime()錯誤處理1/0error_report in g(E_ALL)顯示所有錯誤error_report

5、 in g(0)trigger_error("Ca nnot divide by zero", E_USER_ERROR);trythrow new Exception( 執行失敗");catch (Excepti on $ex)echo $ex;字符串處理stri ng trim("eee ") trim ('ffffe','e') /ltrim rtrimarray explode(".", "fff.ff.f")按指定字符切割string implode("

6、.", $array) 別名:join把數組值數據按指定字符連接起來array str_split("eeeeeeee",4)按長度切割字符串array split("-","fff-ff-f")按指定字符切割int strle n('ffffffff)取字符長度stri ng substr ( stri ng $stri ng , int $start , i nt $le ngth )substr($a,-2, 2)截取字符int substr_count($text, 'is')字符串出現的次數

7、string strstr($text, 'h')第一次出現 h后的字符串別名:strchrint strpos($text, 'h')第一次出現 h 的位置strrpos();最后一次出現h的位置str_replace('a', 'ttt', $t)把$t 里的'a替換為'ttt'strtr($t,'is','ppp')把$t 中'is'替換成'ppp'strtr("hi all, I said hello", array

8、("hello" => "hi") 把'hello'轉換成'hi'string md5_file('1.txt',false)文件數據 md5 加密int strcmp(string str1, string str2) 字符串比較int strcasecmp(string str1, string str2) 忽略大小寫string str_pad($i, 10, "-=", STR_PAD_LEFT)在原字符左邊補'-=',直到新字符串長度為10STR_PAD_

9、RIGHTSTR_PAD_BOTHstring str_repeat('1', 5)重復 5 個 1void parse_str('id=11'); echo $id;將字串符解析為變量array preg_grep(""(d+)?.d+$/", array(11.2,11,11.2) 匹配數據array preg_split ("/s,+/", "hypertext la nguage,program min g");按指定的字符切割array pathi nfo(stri ng path

10、, i nt opti on s)返回文件路徑的信息stri ng base name ( stri ng path , stri ng suffix) 返回路徑中的文件名局部stri ng dirname ( stri ng path ) $_SERVERPHP_SELF 返回路徑中的目錄局部string nl2br("foo isn'tn bar") "foo isn't<br> bar"把換行轉成 <br>stri ng chr ( int ascii )mixed str_word_co unt ( str

11、i ng stri ng , i nt format , stri ng charlist)string str_shuffle ('abc')打亂字符串順序string strrev($str) *stri ng strtolower($str) * stri ng strtoupper($str) *stri ng ucfirst ($str) 1 stri ng ucwords($str)翻轉一個字符串將字符串$str的字符全部轉換為小寫的將字符串$str的字符全部轉換為大寫的 將字符串$str的第一個單詞的首字母變為大寫。string addslashes("

12、I'm") I'm使用反斜線引用字符串這些字符是單引號'、雙引號、將字符串$str的每個單詞的首字母變為大寫。反斜線丨與NUL NULL字符string stripcslashes("I'm") rm 將用addslashes()函數處理后的字符串返回原樣 strip_tags("<p>tt</p>", '<p>') 去除 html、xml、php 標記,第二個參數用來保存標記 string urlencode(string str)string urldeco

13、de(string str)stri ng htmlspecialchars("<a href='test'>Test</a>", ENT_QUOTES)轉換特殊字符為 HTML字符編碼&lt;a href= &#039;test&#039;&gt;Test&lt;/a&gt;ENT_COMPAT -對雙引號進展編碼,不對單引號進展編碼ENT_QUOTES -對單引號和雙引號進展編碼 ENT_NOQUOTES -不對單引號或雙引號進展編碼string htmlentities('

14、<p>ff</p>', ENT_QUOTES)轉換特殊字符為 HTML 字符編碼,中文 會轉成亂碼數組處理int count( mixed var , int mode) 別名:sizeof()取數組長度string implode(".", $array) 別名:join把數組值數據按指定字符連接起來array explode(".", "fff.ff.f")按指定字符切割array range(0, 6, 2)返回數組array(0,2,4,6)第一個參數為起使數,第二個參數為完畢 數,第三個參數為

15、數據增加步長int array_push($a, "3", 1)把3、1'壓入$a將一個或多個單元壓入數組的末尾入棧 第二個參數開始就是壓入的數據void un set ( mixed var , mixed var ,.)array array_pad ($a, 5, 's')用's將數組填補到指定長度bool shuffle ( array $array )將數組打亂mixed array_ra nd ( array in put , i nt num_req)從數組中隨機取出一個或多個單元的索引或鍵名array array_cou nt

16、_values ( array in put )統計數組中所有的值出現的次數array array_combine ( array keys, array values ) 創立一個數組,用一個數組的值作為其鍵名,另一個數組的值作為其值bool array_key_exists ( mixed key, array search )檢查給定的鍵名或索引是否存在于數組 中-mixed array_search ( mixed needle, array haystack , bool strict) 在數組中搜索給定的值, 如果成功那么返回相應的鍵名bool is_array ( mixed v

17、ar )bool in_array ( mixed needle, array haystack , bool strict)檢查數組中是否存在某個值nu mber array_sum ( array array )計算數組中所有值的禾口 array array_unique ( array array )移除數組中重復的值 mixed reset ( array &array )將數組的部指針指向第一個單元 mixed curre nt ( array &array ) mixed n ext ( array &array ) mixed prev ( array &

18、amp;array ) mixed end ( array &array ) mixed key ( array &array )array array_keys ( array in put , mixed search_value , bool strict)返回數組中所有的鍵名-array array_values ( array in put ) 返回數組中所有的值bool prin t_r ( mixed expressi on , bool retur n)void var_dump ( mixed expressi on , mixed expressi on ,

19、.)int array_ un shift ( array &array, mixed var , mixed .) 在數組開頭插入一個或多個單元 mixed array_shift ( array &array )將數組開頭的單元移出數組 mixed array_pop ( array &array )將數組最后一個單元彈出出棧array array_splice ( array $in put, int offset , i nt len gth , array replaceme nt)把數組中的一局部去掉并用其它值取代array array_merge ( ar

20、ray arrayl , array array2 , array .) 合并一個或多個數組array array_flip ( array trans )交換數組中的鍵和值int extract( array var_array , i nt extract_type , stri ng prefix)從數組中將變量導入至 U當前的符號表array compact ( mixed varname , mixed)建立一個數組,包括變量名和它們的值bool sort ( array &array , int sort_flags)從最低到最高重新安排bool natsort($a)用“

21、自然排序"算法對數組排序bool rsort ( array &array , int sort_flags)對數組進展逆向排序最高到最低bool asort ( array &array , int sort_flags)對數組進展排序并保持索引關系bool arsort ( array &array , i nt sort_flags)對數組進展逆向排序并保持索引關系bool ksort ( array &array , int sort_flags) 對數組按照鍵名排序bool krsort ( array &array , i nt s

22、ort_flags) 對數組按照鍵名逆向排序array array_filter ( array in put , callback callback)用回調函數過濾數組中的單元bool array_walk ( array &array, callback funcn ame , mixed userdata)對數組中的每個成員應用用戶函數array array_ map ( callback callback, array arr1 , array )將回調函數作用到給定數組的單元上array array_fill ( int start_ in dex, int num, mix

23、ed value )用給定的值填充數組array_fill(5, 3, 'a')->array(5=>'a',6=>'a',7=>'a')array array_chu nk ( array in put, i nt size , bool preserve_keys) 將一個數組分割成多個其他isset()變量是否存在boolean empty()檢查變量是否存在,并判斷值是否為非空或非 0void unset()銷毀變量header('C onten t-Type: text/html; cha

24、rset=utf-8');method_exists($obj, $method)判斷對象的方法是否可用file_exists($file)判斷文件是否存在fun ctio n_exists();class_exists($class_ name);gettype();獲取數據類型set_magic_quotes_ru ntime() 0 for off, 1 for on當遇到反斜桿、單引號,將會自動加上一個反斜桿,保護系統和數據庫的平安in i_set();平安function strReplace($str)$strResult = $str;if(!get_magic_quot

25、es_gpc() 判斷設置是否開啟$strResult = addslashes($strResult);轉換 sql 語句特殊字符retur n $strResult;function quotes($c ontent)如果 magic_quotes_gpc=Off,那么就開始處理if (!get_magic_quotes_gpc()/判斷$content是否為數組if (is_array($c onten t)如果$content是數組,那么就處理它的每一個單無foreach ($c ontent as $key=>$value)$conten t$key = addslashes(

26、$value);else如果$content不是數組,那么就僅處理一次 addslashes($c onten t);返回 $contentretur n $content; smarty模板引擎將不分析<!-literal-><script>function t() </script><!-/literal->讀取配置文件<!-c on fig_load file="c on fig.s"-><!-#site_url#-><!-$smarty.c on fig.site_url->引入文件

27、<!- in clude file="i ndex2.html"-指定目錄下的文件<!-i nclude_php file="/path/to/load_ nav.php"-> $trusted_dir捕獲模板輸出的數據<!-capture n ame='eee'-> fffffffff<!_/capture_><!-$smarty.capture.eee->循環<sect ion n ame=loop loop=$News_IN><$News_INloop.News

28、lD></sect ion><!-sect ion n ame=t loop=$data-><tr><td><!-$datat.username-></td></tr><!-/sectio n-><foreach from=$ newsArray item=n ewsID key=k>新聞編號:<$ newsID. newslD><br> 新聞容:<$ newsID. newsTitle><br><hr></fore

29、ach>判斷<!-if true->1111<!-else->22222222<!-/if->時間$smarty. no w|date_format:"%Y-%m-%d %H:%M:%S"%Y年%m月%d日亂碼<!-$smarty.now|date_format:"%Y 年%m 月 %d 日 %H 時%M 分 %S 秒"-> 修改插件:$format = mb_con vert_e ncod in g($format,'gbk','utf-8');retur n mb_

30、c on vert_e ncodi ng(strftime($format, $timestamp),'utf-8','gbk');局部不緩存html:<!-$smarty. no w|date_format:"%Y-%m-%d %H:%M:%S"-><!-cacheless a="aaa" b="bbbb"-><!-$smarty. no w|date_format:"%Y-%m-%d %H:%M:%S"-><!-/cacheless-&g

31、t;php:$smarty->register_block('cacheless', 'smarty_block_dynamic', false);/true:緩存, false:不緩存function smarty_block_dy namic($param, $content, &$smarty)return $content;php:function insert_kk() 方法名前必須有"insert" return date('Y-m-d H:i:s');html:<!-i nsert n ame

32、="kk"_>自定義方法注冊方法php$smarty->register_fu nction ('test1', 'test'); function test($p)return 'ffffffffff;html:<!-test1 n ame="ff"->方法自定義插件文件方式定義方法方法名function .test.php文 件存在 plugins 目錄下smarty_fu nction _test($params, &$smarty)function smarty_fu nct

33、ion _test($params, &$smarty)return 'fff;html調用:<!-test n ame='aa' p='ff_>插入方法插件文件:文件存于plug ins目錄下 function smarty_ in sert_kk()return date('Y-m-d H:i:s');php:function insert_kk()/ 方法名前必須有"insert" return date('Y-m-d H:i:s');html:<!-i nsert n ame=

34、"kk"->管道符自定義方法 插件文件方式定義方法fun ctio nmodifier.test.php 文件 存在于 plug ins 目 錄下,方法名 smarty_modifier_test($str, $str2)function smarty_modifier_test($str, $str2)return $str.$str2;html調用:<!-'ff|test:'tt'->php:function eee($a)return 'ffffffffffffff;html:<!-|eee->if語句eq

35、相等,ne、neq不相等,gt大于gte、ge大于等于,Ite、le小于等于,not非, mod求模。is not div by是否能被某數整除,is not even是否為偶數,$a is not even by $b 即($a / $b) % 2 = 0is not odd是否為奇$a is not odd by $b 即($a / $b) % 2 != 0XMLsaxxml:<-?xml version="1.0" encoding="utf-8"?-><books><book><author>Jac

36、k Herringtonv/author> <title>PHP Hacks</title> <publisher>O'Reilly</publisher> </book><book><author>Jack Herringtonv/author> <title>Podcasti ng Hacks</title> <publisher>O'Reilly</publisher></book><book><au

37、thor> 作者 </author><title> 標題 </title><publisher> 出版者 </publisher></book></books>php:$g_books = array();$g_elem = nu II;function startEleme nt( $parser, $n ame, $attrs )global $g_books, $g_elem;if ( $name = 'BOOK' ) $g_books = array(); $g_elem = $n

38、 ame; function en dEleme nt( $parser, $n ame ) global $g_elem; $g_elem = n ull; function textData( $parser, $text )global $g_books, $g_elem;if ( $g_elem = 'AUTHOR' |$g_elem = 'PUBLISHER' |$g_elem = 'TITLE')$g_books cou nt( $g_books ) - 1 $g_elem = $text; $parser = xml_parser_

39、create();xml_set_eleme nt_ha ndler( $parser, "startEleme nt", "en dEleme nt"); xml_set_character_data_ha ndler( $parser, "textData");$f = fopen( '1.xml', 'r');while($data = fread( $f, 4096 )xml_parse( $parser, $data );xml_parser_free( $parser );foreach(

40、$g_books as $book )echo $book'TITLE'." - .$book'AUTHOR'."- ;echo $book'PUBLISHER'."<br>"DomDocume nt()xml:<-?xml version="1.0" encoding="utf-8"?-><books><book><author>Jack Herringtonv/author<title>PHP

41、 Hacks</title><publisher>O'Reilly</publisher></book><book><author>Jack Herringtonv/author><title>Podcasti ng Hacks</title><publisher>O'Reilly</publisher></book><book><author> 作者 </author><title> 標題 &

42、lt;/title><publisher> 出版者 </publisher></book></books>php讀取:$doc = new DOMDocume nt();$doc->load( "l.xml");$books = $doc->getElementsByTagName( "book");foreach( $books as $book )$authors = $book->getEleme ntsByTagName( "author");$autho

43、r = $authors->item(0 )->no deValue;$publishers = $book->getEleme ntsByTagName( "publisher");$publisher = $publishers->item(0 )->no deValue;$titles = $book->getElementsByTagName( "title");$title = $titles->item(O)->nodeV alue;echo "$title - $author - $

44、publisher<br>" php生成:$books = array();$books = array('title' => 'PHP Hacks','author' => 'Jack Herrington', 'publisher' => "O'Reilly");$books = array('title' => 'Podcast ing Hacks','author' => '

45、;Jack Herrington', 'publisher' => "O'Reilly");$doc = new DOMDocume nt(); $doc->formatOutput = true;$r = $doc->createEleme nt( "books");$doc- >ap pe ndChild( $r );foreach( $books as $book )$b = $doc->createEleme nt( "book");$author = $doc-&

46、gt;createEleme nt( "author");$author->appe ndChild($doc->createTextNode( $book'author');$b->appendChild( $author );$title = $doc->createEleme nt( "title");$title->appe ndChild($doc->createTextNode( $book'title');$b->appendChild( $title );$publ

47、isher = $doc->createEleme nt( "publisher");$publisher->appe ndChild($doc->createTextNode( $book'publisher');$b->appendChild( $publisher );$r->appendChild( $b );echo $doc->saveXML();echo $doc->save('222.xml');SimpleXMLxml:<books><book><aut

48、hor>Jack Herringtonv/author<title>PHP Hacks</title><publisher>O'Reilly</publisher></book></books>php:$xml = new SimpleXMLEIeme nt('1.xml', NULL, TRUE);echo$xml->book0->author."".$xml->book0->title."".$xml->book0-&g

49、t;publisher;正那么ereg系列的正那么表達式不需要定屆符,preg系列的才需要,并且定界符可以自己選擇,只有前后一對就行,比方我們一般使用/符號,但是如果里面有/需要匹配那么就需要使用 V來 表示,當/需要出現屢次的時候,這樣就不方便,我們就可以使用其他的定界符 ,比方|正那么特殊字符. + * ? A $ ( ) = ! < > | :由原子(普通字符,如英文字符)、 元字符(有特殊功用的字符) 模式修正字符一個正那么表達式中,至少包含一個原子全部符號解釋將下一個字符標記為一個特殊字符、或一個原義字符、或一個 個八進制轉義符。例如,'n'匹配字符&qu

50、ot;n"。n'匹配一個換行符。序列 那么匹配"("。A向后引用、或一""而"("''匹配匹配'n'或$匹配'n'或匹配輸入字符串的開始位置。如果設置了 'r'之后的位置。匹配輸入字符串的完畢位置。如果設置了 'r'之前的位置。匹配前面的子表達式零次或屢次。RegExp對象的RegExp對象的例如,Multili neMultili ne屬性,A也屬性,zo*能匹配"z"以與"zoo" 。 *等價于

51、0,。匹配前面的子表達式一次或屢次。 +等價于1,。匹配前面的子表達式零次或一次。的"do"。?等價于0,1。n n是一個非負整數。'o',但是能匹配"food"中的兩個n, n是一個非負整數。+能匹配"Z"。例如,例如,匹配確定的0。至少匹配'zo+能匹配"zo"以與"do(es)?"可以匹配"do"n次。例如,'o2'不能匹配"zoo",但不或"does"中"Bob"中的n

52、次。例如,o2,'不能匹配"Bob"中的o', 但能匹配"foooood"中的所有 o。o1,'等價于'o+'。'o0,'那么等價于'o*'。n,m m和n均為非負整數,其中n <= m。最少匹配n次且最多匹配m次。例如,"o1,3"將匹配"fooooood"中的前三個 o。o0,1'等價于o?'。請注意在逗號和兩 個數之間不能有空格。?當該字符緊跟在任何一個其他限制符(*, +, ?, n, n, n,m)后面時,匹配模

53、式是非貪婪的。非貪婪模式盡可能少的匹配所搜索的字符串,而默認的貪婪模式那么盡可能多的匹配所搜索的字符串。例如,對于字符串"oooo",'o+?'將匹配單個"0",而0+'將匹配所有0'。.匹配除"n"之外的任何單個字符。要匹配包括'n'在的任何字符,請使用象'n'的模式。(pattern)匹配pattern并獲取這一匹配。所獲取的匹配可以從產生的Matches集合得到,在VBScript中使用 SubMatches集合,在JScript中那么使用 $0$9屬性。要匹 配圓

54、括號字符,請使用 '('或')'。(?:pattern)匹配pattern但不獲取匹配結果,也就是說這是一個非獲取匹配,不進展存儲供以后使用。這在使用"或字符(|)來組合一個模式的各個局部是很有用。例如,'industr(?:y|ies)就是一個比'industry|industries'更簡略的表達式。(?=pattern)正向預查,在任何匹配pattern的字符串開始處匹配查找字符串。這是一個非獲取匹配,也就是說,該匹配不需要獲取供以后使用。例如,Win dows (?=95|98|NT|2000)'能匹配"

55、;Windows 2000" 中的"Windows",但不能匹配 "Windows 3.1" 中的"Windows"。預查不消耗字符,也就是說,在一個匹配發生后,在最后一次匹配之后 立即開始下一次匹配的搜索,而不是從包含預查的字符之后開始。pattern)負向預查,在任何不匹配pattern的字符串開始處匹配查找字符串。這是一個非獲取匹配,也就是說,該匹配不需要獲取供以后使用。例如'Win dows (?!95|98|NT|2000)'能匹配 "Windows 3.1"中的"Wi

56、ndows",但不能匹配 "Windows 2000" 中的"Windows"。預查不消耗字符,也就是說,在一個匹配發生后,在最后一次匹配之后 立即開始下一次匹配的搜索,而不是從包含預查的字符之后開始x|y 匹配 x 或 y。例如,'z|food'能匹配"z"或"food"。(z|f)ood'那么匹配"zood" 或"food"。xyz字符集合。匹配所包含的任意一個字符。例如,abc'可以匹配"plain"中的a&

57、#39;。Axyz負值字符集合。匹配未包含的任意字符。例如,'Aabc'可以匹配"plain"中的'p'。a-z字符圍。匹配指定圍的任意字符。例如, 'a-z'可以匹配'a'至U 'z'圍的任 意小寫字母字符。Aa-z負值字符圍。匹配任何不在指定圍的任意字符。例如,'Aa-z'可以匹配任何不在'a'到'z'圍的任意字符。b 匹配一個單詞邊界,也就是指單詞和空格間的位置。例如,'erb'可以匹配"never"中的&

58、#39;er',但不能匹配 "verb"中的'er'。B 匹配非單詞邊界。'erB'能匹配"verb"中的'er',但不能匹配"never"中的'er'。cx 匹配由x指明的控制字符。例如,cM匹配一個 Control-M 或回車符。x的 值必須為 A-Z或a-z之一。否那么,將 c視為一個原義的'c'字符。d 匹配一個數字字符。等價于 0-9。D 匹配一個非數字字符。等價于A0-9。f 匹配一個換頁符。等價于 x0c和cL。n 匹配一個換行符。等

59、價于 x0a和cJ。r匹配一個回車符。等價于x0d和cM。s匹配任何空白字符,包括空格、制表符、換頁符等等。等價于fnrtv。S匹配任何非空白字符。等價于a fnrtv。t匹配一個制表符。等價于 x09和 cI。v匹配一個垂直制表符。等價于x0b 和 cK。w匹配包括下劃線的任何單詞字符。等價于'A-Za-z0-9_'。W匹配任何非單詞字符。等價于'AA-Za-z0-9_'。xn匹配n,其中n為十六進制轉義值。 十六進制轉義值必須為確定的兩個數字長。例如,'x41'匹配"A"。'匕041'那么等價于'x

60、04' & "1"。正那么表達式中可以使用ASCII編碼。.num 匹配num,其中num是一個正整數。對所獲取的匹配的引用。例如,(.)1'匹配兩個連續的一樣字符。n標識一個八進制轉義值或一個向后引用。如果n之前至少n個獲取的子表達式,那么n為向后引用。否那么,如果 n為八進制數字(0-7),那么n為一個八進制轉 義值。nm標識一個八進制轉義值或一個向后引用。如果nm之前至少有nm個獲得子表達式,那么 nm為向后引用。如果 nm之前至少有 n個獲取,那么 n為一個后跟文 字m的向后引用。如果前面的條件都不滿足,假設n和m均為八進制數字 (0-7),

61、那么nm將匹配八進制轉義值 nm。nml如果n為八進制數字(0-3),且m和I均為八進制數字(0-7),那么匹配八進制轉義值 nml。un 匹配n,其中n是一個用四個十六進制數字表示的Unicode字符。例如,u00A9匹配符號。例子八b(a-z+)b/i單詞數量/(w+):W(F/:+)(:d*)?(F# *)/將一個URL解析為協議、域、端口與相對路徑"(?:Chapter|Sectio n) 1-90-90,1$/定位章節的位置/-a-z/ A至z共26個字母再加一個-號。/terb/ 可匹配 chapter,而不能 terminal 八Bapt/可匹配chapter,而不能a

62、ptitude/Windows(?=95 |98 |NT )/ 可匹配 Windows95 或 Windows98 或 WindowsNT,當找到 一個匹配后,從 Windows后面開始進展下一次的檢索匹配。A_.0-9a-z-+(0-9a-z0-9a-z-+.)+a-z2,3$ Email 合法格式檢查A0-9+$純數據檢查A0-9a-z10-9a-z-0,19$用戶名檢查,字母和數字開始,只能含字母、數字、橫杠模式修正符i忽略大小寫s如果設定了此修正符,模式中的圓點元字符.匹配所有的字符,包括換行符e只用在preg_replace(),在替換字符串中對逆向引用作正常的替換,將其作為PHP代

63、碼求值,并用其結果來替換所搜索的字符串。如:$p = '/colorFo nt(.+?)VcolorFo nt/ie:$t = '"<img src='color.php?t=".urle ncode("1")."'/>":ecoh preg_replace($p,$t,$stri ng);這里必須加上e修正,才能將匹配到的容用 urlencode處理U貪婪模式,最大限度匹配如:/aw+?e/U 匹配abceadeddd中的abceade而不是abce,如果不加 U修正,那么匹 配己 abceA強制從字符串開頭匹配,即自動在模式開頭加上 Am當設定了此修正符,“行起始"a和“行完畢"$除了匹配整個字符串開頭和 完畢外,還分別匹配其中的換行符的之后和之前。如果目標字符串中沒有“n 字符或者模式中沒有a或$,那么設定此修正符沒有任何效果。D模式中的美元元字符僅匹配目標字符串的結尾。沒有此選項時,如果最后一個 字符是換行符的話,美元符號也會匹配此字符之前。如果設定了m修正符那么忽略此選項例子匹配中文p

溫馨提示

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

評論

0/150

提交評論