Cet article présente principalement les exemples d'utilisation de la fonction de gestion des erreurs PHP register_shutdown_function. Les amis qui en ont besoin peuvent s'y référer
Lorsque le programme est exécuté en ligne, si vous rencontrez un BUG, vous ne voulez pas le faire. afficher des informations d'erreur sur le front-end, mais en même temps avertir les développeurs par e-mail à temps, et la fonction register_shutdown_function peut s'avérer utile.
Enregistrez une fonction qui sera appelée une fois l'exécution du script terminée ou après exit().
peut appeler register_shutdown_function()
plusieurs fois, et ces rappels enregistrés seront appelés séquentiellement dans l'ordre dans lequel ils ont été enregistrés. Si vous appelez exit() dans une méthode enregistrée, tous les traitements seront abandonnés et les autres rappels d'abandon enregistrés ne seront plus appelés.
register_shutdown_function
fonction, lorsque l'exécution de notre script est terminée ou s'arrête de manière inattendue, provoquant l'arrêt de l'exécution de PHP, notre fonction sera appelée et pourra être utilisée en conjonction avec error_get_last pour obtenir des informations sur l'erreur.
register_shutdown_function ( callable $callback [, mixed $parameter [, mixed $... ]] )
fonction de rappel appelable
le paramètre peut passer des paramètres supplémentaires Pour passer les paramètres de la fonction abort
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()
Recommandations associées :
Analyse de la fonction PHP register_shutdown_function
php registerLa différence entre OFF et ON du paramètre _globals
Partagez votre compréhension de la valeur PHP register_globals sur et off_PHP tutoriel
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!