-
使用關鍵字static修飾的,稱之為靜態方法,靜態方法不需要實例化對象,可以通過類名直接調用,操作符為雙冒號::。
查看全部 -
\ 一般用于轉義字符
^ 斷言目標的開始位置(或在多行模式下是行首)
$ 斷言目標的結束位置(或在多行模式下是行尾)
. 匹配除換行符外的任何字符(默認)
[ 開始字符類定義
] 結束字符類定義
| 開始一個可選分支
( 子組的開始標記
) 子組的結束標記
? 作為量詞,表示 0 次或 1 次匹配。位于量詞后面用于改變量詞的貪婪特性。 (查閱量詞)
* 量詞,0 次或多次匹配
+ 量詞,1 次或多次匹配
{ 自定義量詞開始標記
} 自定義量詞結束標記查看全部 -
如果模式中包含較多的分割字符,建議更換其他的字符作為分隔符,也可以采用preg_quote進行轉義。
查看全部 -
如果模式中包含分隔符,則分隔符需要使用反斜杠(\)進行轉義。
查看全部 -
serialize 對象序列化成字符串
unserialize反序列化成字符串
var_dump輸出變量信息
查看全部 -
PHP異常處理之異常處理類
PHP具有很多異常處理類,其中Exception是所有異常處理的基類。
Exception具有幾個基本屬性與方法,其中包括了:
message 異常消息內容
code 異常代碼
file 拋出異常的文件名
line 拋出異常在該文件的行數其中常用的方法有:
getTrace 獲取異常追蹤信息
getTraceAsString 獲取異常追蹤信息的字符串
getMessage 獲取出錯信息查看全部 -
PHP異常處理之拋出一個異常
從PHP5開始,PHP支持異常處理,異常處理是面向對象一個重要特性,PHP代碼中的異常通過throw拋出,異常拋出之后,后面的代碼將不會再被執行。
既然拋出異常會中斷程序執行,那么為什么還需要使用異常處理?
異常拋出被用于在遇到未知錯誤,或者不符合預先設定的條件時,通知客戶程序,以便進行其他相關處理,不至于使程序直接報錯中斷。
當代碼中使用了try catch的時候,拋出的異常會在catch中捕獲,否則會直接中斷。
?
1、基本語法
? ? ? ? try{
? ? ? ? ? ? //可能出現錯誤或異常的代碼
? ? ? ? ? ? //catch表示捕獲,Exception是php已定義好的異常類
? ? ? ? } catch(Exception $e){
? ? ? ? ? ? //對異常處理,方法:
? ? ? ? ? ? ? ? //1、自己處理
? ? ? ? ? ? ? ? //2、不處理,將其再次拋出
? ? ? ? }
2、處理處理程序應當包括:
Try - 使用異常的函數應該位于 "try" ?代碼塊內。如果沒有觸發異常,則代碼將照常繼續執行。但是如果異常被觸發,會拋出一個異常。
Throw - 這里規定如何觸發異常。注意:每一個 "throw" 必須對應至少一個 "catch",當然可以對應多個"catch"
Catch - "catch" 代碼塊會捕獲異常,并創建一個包含異常信息的對象。查看全部 -
PHP文件系統之刪除文件
刪除文件夾使用rmdir函數,文件夾必須為空,如果不為空或者沒有權限則會提示失敗。
如果文件夾中存在文件,可以先循環刪除目錄中的所有文件,然后再刪除該目錄,循環刪除可以使用glob函數遍歷所有文件。
查看全部 -
$0是指匹配到的所有結果,$1是指匹配到的所有結果的第一個子組。這里的第一個子組就是整個結果,所以換成$1也是可以的。把<em>$0</em>去掉不能正確運行,是因為這個課程的要求本來就是給這些文字加em標簽(就是把文字變成斜體的html標簽)。如果去掉了就變成把那些文字替換成空值,那就只能看見2個逗號了。
查看全部 -
正則表達式的搜索和替換
其中${1}與$1的寫法是等效的,表示第一個匹配的字串,$2代表第二個匹配的。
查看全部 -
元字符與轉義
正則表達式中具有特殊含義的字符稱之為元字符,常用的元字符有:
\ 一般用于轉義字符
^ 斷言目標的開始位置(或在多行模式下是行首)
$ 斷言目標的結束位置(或在多行模式下是行尾)
. 匹配除換行符外的任何字符(默認)
[ 開始字符類定義
] 結束字符類定義
| 開始一個可選分支
( 子組的開始標記
) 子組的結束標記
? 作為量詞,表示 0 次或 1 次匹配。位于量詞后面用于改變量詞的貪婪特性。 (查閱量詞)
* 量詞,0 次或多次匹配
+ 量詞,1 次或多次匹配
{ 自定義量詞開始標記
} 自定義量詞結束標記查看全部 -
PHP類和對象之對象的高級特性
對象復制,在一些特殊情況下,可以通過關鍵字clone來復制一個對象,這時__clone方法會被調用,通過這個魔術方法來設置屬性的值。
查看全部 -
PHP類和對象之重載
PHP中的重載指的是動態的創建屬性與方法,是通過魔術方法來實現的。屬性的重載通過__set,__get,__isset,__unset來分別實現對不存在屬性的賦值、讀取、判斷屬性是否設置、銷毀屬性。
方法的重載通過__call來實現,當調用不存在的方法的時候,將會轉為參數調用__call方法,當調用不存在的靜態方法時會使用__callStatic重載。
查看全部 -
PHP類和對象之訪問控制
被定義為公有的類成員可以在任何地方被訪問。被定義為受保護的類成員則可以被其自身以及其子類和父類訪問。被定義為私有的類成員則只能被其定義所在的類訪問。
如果構造函數定義成了私有方法,則不允許直接實例化對象了,這時候一般通過靜態方法進行實例化,在設計模式中會經常使用這樣的方法來控制對象的創建,比如單例模式只允許有一個全局唯一的對象。
查看全部 -
PHP類和對象之Static靜態關鍵字
靜態屬性與方法可以在不實例化類的情況下調用,直接使用
類名::方法名
的方式進行調用。靜態屬性不允許對象使用->操作符調用。靜態方法中,$this偽變量不允許使用。可以使用self,parent,static在內部調用靜態方法與屬性。
查看全部
舉報