如何更改php錯誤的錯誤輸出?例如,如果它的語法錯誤或服務器端超時,我想回顯一條允許用戶刷新頁面的消息。將php錯誤輸出更改爲鏈接自定義消息
繼承人的代碼,我想補充我的錯誤消息:
$XML->registerXPathNamespace('tree','www.tree.com'); <--occasionally errors here, so I want to output my own error message.
如何更改php錯誤的錯誤輸出?例如,如果它的語法錯誤或服務器端超時,我想回顯一條允許用戶刷新頁面的消息。將php錯誤輸出更改爲鏈接自定義消息
繼承人的代碼,我想補充我的錯誤消息:
$XML->registerXPathNamespace('tree','www.tree.com'); <--occasionally errors here, so I want to output my own error message.
使用功能set_error_handler
定義自定義功能,當有錯誤被調用。然後,您可以決定在該功能中做任何你想做的事情。
如果您只希望特定的持續時間,可以使用restore_error_handler
進行恢復。
set_error_handler('yourHandler');
...
$XML->registerXPathNamespace('tree','www.tree.com');
...
restore_error_handler();
function yourHandler(int $errno , string $errstr) {
//show link to refresh page, whatever. full signature can be found on PHP manual page
}
好,快速檢查PHP手冊中registerXPathNamespace表明,它返回TURE
或FALSE
。這對我的解決方案是完美的。
if ([email protected]$XML->registerXPathNamespace('tree','www.tree.com')) {
echo '<b>ERROR:</b> Could not register xml path. Please reload the page!';
}
不是這樣,如果它返回FALSE,那麼將顯示消息。而$ XML前面的@
將禁用該操作可能導致的原始錯誤。
您將無法捕捉到語法/致命錯誤。 –