我遇到了...刺激,我猜...在我使用的應用程序中使用自定義錯誤處理程序,我希望這裏有人能提供一些見解。自定義PHP錯誤處理
作爲我們網站數據聚合的一部分,自定義蜘蛛和解析器是在我們的代碼庫之外的基礎上建立的。它們存儲在數據庫中,並通過齒輪過程中的eval運行。
設置了一個自定義錯誤處理程序,在出現錯誤時插入正在運行的公司的ID號(例如,如果在正則表達式中忘記了分隔符,或者當我還沒有分隔符時,我的咖啡)。大多數情況下,這個錯誤處理程序很好。
但是,我注意到如果在eval'd代碼中有一個未終止的註釋,那麼錯誤處理程序不會被使用,所以php錯誤日誌不包含具有該問題的公司的ID號。
我們處理下面的錯誤類型的處理器
- E_WARNING
- E_USER_WARNING
- E_ERROR
- E_USER_ERROR
日誌狀態註釋字符串錯誤是 '警告' ,所以我不知道爲什麼自定義hanlder沒有被調用。
有什麼想法?
你使用'的set_error_han dler()'處理錯誤? –
只是好奇,你可以在所有代碼的末尾添加'/ **/\ n'嗎?這將強制終止評論。 – cwallenpoole
未終止的評論並不是唯一引起奇怪問題的事情,但它是最容易解釋的。 – Lisa