-
PHP文件系統(tǒng)之刪除文件
刪除文件夾使用rmdir函數(shù),文件夾必須為空,如果不為空或者沒有權(quán)限則會提示失敗。
如果文件夾中存在文件,可以先循環(huán)刪除目錄中的所有文件,然后再刪除該目錄,循環(huán)刪除可以使用glob函數(shù)遍歷所有文件。
查看全部 -
PHP類和對象之訪問控制
被定義為公有的類成員可以在任何地方被訪問。被定義為受保護的類成員則可以被其自身以及其子類和父類訪問。被定義為私有的類成員則只能被其定義所在的類訪問。
如果構(gòu)造函數(shù)定義成了私有方法,則不允許直接實例化對象了,這時候一般通過靜態(tài)方法進行實例化,在設(shè)計模式中會經(jīng)常使用這樣的方法來控制對象的創(chuàng)建,比如單例模式只允許有一個全局唯一的對象。
查看全部 -
PHP類和對象之Static靜態(tài)關(guān)鍵字
靜態(tài)屬性與方法可以在不實例化類的情況下調(diào)用,直接使用
類名::方法名
的方式進行調(diào)用。靜態(tài)屬性不允許對象使用->操作符調(diào)用。靜態(tài)方法中,$this偽變量不允許使用??梢允褂胹elf,parent,static在內(nèi)部調(diào)用靜態(tài)方法與屬性。
靜態(tài)屬性需要加$符號使用
查看全部 -
PHP類和對象之構(gòu)造函數(shù)和析構(gòu)函數(shù)
在子類中如果定義了__construct則不會調(diào)用父類的__construct,如果需要同時調(diào)用父類的構(gòu)造函數(shù),需要使用parent::__construct()顯式的調(diào)用
查看全部 -
PHP類和對象之定義類的方法
使用關(guān)鍵字static修飾的,稱之為靜態(tài)方法,靜態(tài)方法不需要實例化對象,可以通過類名直接調(diào)用,操作符為雙冒號::
查看全部 -
PHP類和對象之類的屬性
默認都為public,外部可以訪問。一般通過->對象操作符來訪問對象的屬性或者方法,對于靜態(tài)屬性則使用::雙冒號進行訪問。當(dāng)在類成員方法內(nèi)部調(diào)用的時候,可以使用$this偽變量調(diào)用當(dāng)前對象的屬性。
受保護的屬性與私有屬性不允許外部調(diào)用,在類的成員方法內(nèi)部是可以調(diào)用的。
查看全部 -
PHP類和對象之創(chuàng)建一個對象
方法內(nèi)部可以使用$this偽變量調(diào)用對象的屬性或者方法
查看全部 -
public一般通過”->“對象操作符來訪問對象的屬性或者方法
new?類名->'值';
靜態(tài)屬性則使用”::“雙冒號進行訪問
類部訪問用”$this“偽變量
查看全部 -
PHP數(shù)據(jù)庫擴展
mysql擴展進行數(shù)據(jù)庫連接的方法:
$link?=?mysql_connect('mysql_host',?'mysql_user',?'mysql_password');
mysqli擴展:
$link?=?mysqli_connect('mysql_host',?'mysql_user',?'mysql_password');
PDO擴展
$dsn?=?'mysql:dbname=testdb;host=127.0.0.1'; $user?=?'dbuser'; $password?=?'dbpass'; $dbh?=?new?PDO($dsn,?$user,?$password);
查看全部 -
PHP異常處理之獲取錯誤發(fā)生的所在行
在異常被捕獲之后,我們可以通過異常處理對象獲取其中的異常信息,前面我們已經(jīng)了解捕獲方式,以及獲取基本的錯誤信息。
在實際應(yīng)用中,我們通常會獲取足夠多的異常信息,然后寫入到錯誤日志中。
通過我們需要將報錯的文件名、行號、錯誤信息、異常追蹤信息等記錄到日志中,以便調(diào)試與修復(fù)問題。
查看全部 -
PHP異常處理之捕獲異常信息
在了解了異常處理的基本原理之后,我們可以通過try catch來捕獲異常,我們將執(zhí)行的代碼放在try代碼塊中,一旦其中的代碼拋出異常,就能在catch中捕獲。
這里我們只是通過案例來了解try catch的機制以及異常捕獲的方法,在實際應(yīng)用中,不會輕易的拋出異常,只有在極端情況或者非常重要的情況下,才會拋出異常,拋出異常,可以保障程序的正確性與安全,避免導(dǎo)致不可預(yù)知的bug。
查看全部 -
PHP異常處理之異常處理類
PHP具有很多異常處理類,其中Exception是所有異常處理的基類。
Exception具有幾個基本屬性與方法,其中包括了:
message 異常消息內(nèi)容
code 異常代碼
file 拋出異常的文件名
line 拋出異常在該文件的行數(shù)其中常用的方法有:
getTrace 獲取異常追蹤信息
getTraceAsString 獲取異常追蹤信息的字符串
getMessage 獲取出錯信息如果必要的話,可以通過繼承Exception類來建立自定義的異常處理類。
查看全部 -
PHP異常處理之拋出一個異常
從PHP5開始,PHP支持異常處理,異常處理是面向?qū)ο笠粋€重要特性,PHP代碼中的異常通過throw拋出,異常拋出之后,后面的代碼將不會再被執(zhí)行。
既然拋出異常會中斷程序執(zhí)行,那么為什么還需要使用異常處理?
異常拋出被用于在遇到未知錯誤,或者不符合預(yù)先設(shè)定的條件時,通知客戶程序,以便進行其他相關(guān)處理,不至于使程序直接報錯中斷。
當(dāng)代碼中使用了try catch的時候,拋出的異常會在catch中捕獲,否則會直接中斷。
?
1、基本語法
? ? ? ? try{
? ? ? ? ? ? //可能出現(xiàn)錯誤或異常的代碼
? ? ? ? ? ? //catch表示捕獲,Exception是php已定義好的異常類
? ? ? ? } catch(Exception $e){
? ? ? ? ? ? //對異常處理,方法:
? ? ? ? ? ? ? ? //1、自己處理
? ? ? ? ? ? ? ? //2、不處理,將其再次拋出
? ? ? ? }
2、處理處理程序應(yīng)當(dāng)包括:
Try - 使用異常的函數(shù)應(yīng)該位于 "try" ?代碼塊內(nèi)。如果沒有觸發(fā)異常,則代碼將照常繼續(xù)執(zhí)行。但是如果異常被觸發(fā),會拋出一個異常。
Throw - 這里規(guī)定如何觸發(fā)異常。注意:每一個 "throw" 必須對應(yīng)至少一個 "catch",當(dāng)然可以對應(yīng)多個"catch"
Catch - "catch" 代碼塊會捕獲異常,并創(chuàng)建一個包含異常信息的對象。查看全部 -
PHP類和對象之訪問控制
被定義為公有的類成員可以在任何地方被訪問。被定義為受保護的類成員則可以被其自身以及其子類和父類訪問。被定義為私有的類成員則只能被其定義所在的類訪問。
如果構(gòu)造函數(shù)定義成了私有方法,則不允許直接實例化對象了,這時候一般通過靜態(tài)方法進行實例化,在設(shè)計模式中會經(jīng)常使用這樣的方法來控制對象的創(chuàng)建,比如單例模式只允許有一個全局唯一的對象。
查看全部 -
PHP類和對象之Static靜態(tài)關(guān)鍵字
態(tài)屬性與方法可以在不實例化類的情況下調(diào)用,直接使用
類名::方法名
的方式進行調(diào)用。靜態(tài)屬性不允許對象使用->操作符調(diào)用。靜態(tài)方法中,$this偽變量不允許使用??梢允褂胹elf,parent,static在內(nèi)部調(diào)用靜態(tài)方法與屬性。
靜態(tài)屬性需要加$符號使用
查看全部
舉報