在一些 PHP 內建函數(例如
mkdir)中,在前面添加 @可以屏蔽該函數拋出的錯誤
那麼自訂函數要如何?這點呢?
我試了下throw new Exception和trigger_error都無法被@屏蔽
補充說明:
是這樣的,例如我想寫一個JsonFile::get()方法,當檔案不存在時拋個錯、路徑非法時拋個錯、解碼失敗時拋個錯,並返回false
當使用者在意錯誤資訊時可以自行捕捉並處理;當不在意錯誤資訊只希望得到檔案內容或 false (失敗)時,可以
@JsonFile::get()
這樣調用
主要也是為了方便嘛。請問如何?這樣的自訂方法(或函數)呢?
或者說我這樣的思路不太好?有沒有既方便又合理的實現方法呢?
回複內容:
在一些 PHP 內建函數(例如mkdir)中,在前面添加 @可以屏蔽該函數拋出的錯誤
那麼自訂函數要如何?這點呢?
我試了下throw new Exception和trigger_error都無法被@屏蔽
補充說明:
是這樣的,例如我想寫一個JsonFile::get()方法,當檔案不存在時拋個錯、路徑非法時拋個錯、解碼失敗時拋個錯,並返回false
當使用者在意錯誤資訊時可以自行捕捉並處理;當不在意錯誤資訊只希望得到檔案內容或 false (失敗)時,可以
@JsonFile::get()
這樣調用
主要也是為了方便嘛。請問如何?這樣的自訂方法(或函數)呢?
或者說我這樣的思路不太好?有沒有既方便又合理的實現方法呢?
首先要保證文法沒問題,然後好像和 throw new Exception和trigger_error 沒關係了,上代碼:
Warning: mysql_connect() [function.mysql-connect]: Access denied for user '使用者名稱錯誤'@'localhost' (using password: YES) in D:Projectsns1.php on line 4
test2沒有拋出 Warning.