我寫了一個類,其方法經常拋出一些異常 - 例如,如果給定的用戶ID不對應於用戶,則爲NoResultException
,如果令牌錯誤則爲BadTokenException
,如果電子郵件地址爲EmailTakenException
已經註冊等。是否有可能使PHP異常非致命?
我想用它寫一個測試程序非常快。我感覺很懶,我不想寫try/catch
塊。我現在可能會這樣做,但我仍然要問:是否可以更改PHP的行爲並使其成爲異常不會導致致命錯誤的原因?換句話說,我可以讓我的腳本捕捉異常並使用默認異常處理程序輸出它們(因爲我使用XDebug並且回溯很好),但是允許腳本完成執行嗎?然後,我只能看到錯誤消息(如「電子郵件地址已被佔用」),而不會停止打印頁面的其餘部分。
謝謝。
[set_exception_handler](http://www.php.net/set_exception_handler)也許? –
所以......你寫了一個拋出異常的類,但卻懶得實際捕獲你自己拋出的異常?所以......爲什麼要寫在例外中呢? –
那麼,我會寫在生產中。我只是問是否有可能將異常處理爲非致命錯誤並繼續執行,以便在測試時可以打印異常和回溯,但繼續執行程序。我猜這不是。我無法使用'set_exception_handler'的原因是(a)沒有'get_exception_handler',所以我可以保留和調用XDebug的回溯,(b)沒有辦法讓'set_exception_handler'在它之後不立即終止腳本執行火災。 –