Home>Article>Backend Development> PHP error handling function
When the program is running online, if you encounter a BUG and want to avoid outputting error messages on the front end and notify developers by email in a timely manner, theregister_shutdown_function
function can be dispatched It comes in handy.
Register a function that will be called after the script execution is completed or after exit().
You can callregister_shutdown_function()
multiple times, and these registered callbacks will be called sequentially in the order in which they were registered. If you call exit() inside a registered method, all processing will be aborted and other registered abort callbacks will not be called again.
register_shutdown_function
Function, when our script execution is completed or unexpected death causes PHP execution to be shut down, our function will be called and can be used in conjunction witherror_get_last
Use to get error information.
register_shutdown_function ( callable $callback [, mixed $parameter [, mixed $... ]] )
callable callback function
parameter can pass parameters to the abort function by passing in additional parameters.
DEMO1:
//关闭错误报告 error_reporting(0); //实现自己的错误信息展示 register_shutdown_function(‘myShutdown‘); $debug = true; function myShutdown() { global $debug; // 无论错误是否发生,这句都会执行 echo ‘ERROR‘ , ‘
‘; 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
Recommended tutorial:PHP video tutorial
The above is the detailed content of PHP error handling function. For more information, please follow other related articles on the PHP Chinese website!