中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

PHP錯誤處理函數怎么辦

發布時間:2020-07-15 10:43:10 來源:億速云 閱讀:142 作者:Leah 欄目:編程語言

PHP錯誤處理函數怎么辦?相信很多沒有經驗的人對此束手無策,為此本文總結了問題出現的原因和解決方法,通過這篇文章希望你能解決這個問題。

當程序在線上運行時,如果遇到BUG,想不在前端輸出錯誤信息,同時能及時郵件通知開發者,register_shutdown_function函數就可以派上用場了。

注冊一個會在腳本執行完成或者 exit() 后被調用的函數。

可以多次調用register_shutdown_function(),這些被注冊的回調會按照他們注冊時的順序被依次調用。 如果你在注冊的方法內部調用 exit(), 那么所有處理會被中止,并且其他注冊的中止回調也不會再被調用。

register_shutdown_function函數,當我們的腳本執行完成或意外死掉導致PHP執行即將關閉時,我們的這個函數將會 被調用,可以配合 error_get_last 使用,獲取錯誤信息。

register_shutdown_function ( callable $callback [, mixed $parameter [, mixed $... ]] )

callable 回調函數

parameter可以通過傳入額外的參數來將參數傳給中止函數。

DEMO1:

//關閉錯誤報告
error_reporting(0);
//實現自己的錯誤信息展示
register_shutdown_function(‘myShutdown‘);
$debug = true;
function myShutdown() {
 global $debug;
 // 無論錯誤是否發生,這句都會執行
 echo ‘ERROR‘ , ‘<br/>‘;
 if (!$debug) {
   $error = error_get_last();
   // todo 可以在這里做郵件發送提醒 或 錯誤日志收集
   var_export($error);
 }
}

DEMO2:

// 回到函數帶參數:記錄當前請求URL
$current_page = htmlspecialchars($_SERVER[‘SCRIPT_NAME‘], ENT_QUOTES, ‘UTF-8‘);
$current_page .= $_SERVER[‘QUERY_STRING‘] ? ‘?‘.htmlspecialchars($_SERVER[‘QUERY_STRING‘], ENT_QUOTES, ‘UTF-8‘) : ‘‘;
register_shutdown_function(function ($current_page) {
 //todo send email or log
}, $current_page);
error_get_last() 
//錯誤信息查看:http://php.net/manual/zh/errorfunc.constants.php

看完上述內容,你們掌握PHP錯誤處理函數怎么辦的方法了嗎?如果還想學到更多技能或想了解更多相關內容,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

长海县| 霞浦县| 隆回县| 沁源县| 民勤县| 罗平县| 衡阳县| 常熟市| 金昌市| 遵义市| 靖州| 永康市| 河源市| 新竹县| 获嘉县| 平昌县| 和顺县| 富阳市| 吉安县| 赤壁市| 乐昌市| 宜春市| 邹平县| 庆安县| 怀来县| 葫芦岛市| 嫩江县| 凉城县| 于田县| 井研县| 南乐县| 应用必备| 和政县| 延津县| 河北区| 新野县| 化隆| 奈曼旗| 龙里县| 石家庄市| 洛宁县|