600字范文,内容丰富有趣,生活中的好帮手!
600字范文 > php怎么捕获致命错误

php怎么捕获致命错误

时间:2019-04-14 17:57:57

相关推荐

php怎么捕获致命错误

后端开发|PHP问题

php,致命错误

后端开发-PHP问题

php导入excel源码,ubuntu登录欢迎语句,tomcat服务加载数据慢,爬虫 状态 301,php是什么软件,渝北区一站式seo推广代运营lzw

shift 源码,vscode 常用功能,升级ubuntu 20.04,tomcat删除默认文档,爬虫ubuntu,php 判断id,海南seo优化哪家实惠,展示网站源码,简单电商网站后台管理系统模板lzw

利用register_shutdown_function()函数来捕获致命错误,该函数表示 PHP 在程序结束时触发某个函数行为。

qq虚假红包源码,查看显卡驱动ubuntu,tomcat9 与jdk,爬虫百万mysql,php实战案例,sem营销引流怎么做seo顾问lzw

(推荐教学:php图文教学)

语法:

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

注册一个 callback ,它会在脚本执行完成或者 exit() 后被调用。

参数:

callback:待注册的中止回调

parameter:可以通过传入额外的参数来将参数传给中止函数

程序结束有四种情况:

php代码执行过程中发生错误

php代码顺利执行成功

php代码运行超时

页面被用户强制停止

(视频教学推荐:编程入门)

举例:

我们自定义一个行为:

<?php/** * Created by PhpStorm. * User: Xavier * Date: /6/3 * Time: 12:16 */class RegisterShutDownFunction{ /*** @author Xavier* @desc php 程序运行结束时候需要运行的函数*/ public static function register() { if ($error = error_get_last()) { // $filename 必须是一个绝对路径 if (!defined(REGISTER_SHUTDOWN_FUNCTION_LOG_FILENAME)) {$filename = dirname(__FILE__) . DIRECTORY_SEPARATOR . egister_shutdown_function.log; } else {$filename = REGISTER_SHUTDOWN_FUNCTION_LOG_FILENAME; } $message = 时间 : . date(Y-m-d H:i:s) . PHP_EOL; $message .= 文件 : . $error[file] . PHP_EOL; $message .= 行数 : . $error[line] . PHP_EOL; $message .= 错误 : . $error[message] . PHP_EOL; $message .= 类型 : . $error[ ype] . PHP_EOL . PHP_EOL; file_put_contents($filename, $message, FILE_APPEND); } }}

应用:

<?php/** * Created by PhpStorm. * User: Xavier * Date: /6/3 * Time: 12:27 */ // 定义一个常量来记录程序停止后,出现错误的 LOG 日志文件define(REGISTER_SHUTDOWN_FUNCTION_LOG_FILENAME, dirname(__FILE__) . DIRECTORY_SEPARATOR . 11.log);// 包含异常处理的类文件include lib/RegisterShutDownFunction.php;$registerShutDownFunction = new RegisterShutDownFunction();// register_shutdown_function 函数必须在所有的程序执行之间注册register_shutdown_function(array($registerShutDownFunction, egister));// 注册成功之后调用一个不存在的方法 aa();aa();

错误日志:

时间 : -06-03 04:56:02文件 : /Users/x/www/php/exception/2.php行数 : 17错误 : Uncaught Error: Call to undefined function aa() in /Users/x/www/php/exception/2.php:17Stack trace:#0 {main} thrown类型 : 1

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。