ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
1、线上环境出错时,你是如何快速的定位到错误代码? > 1、是否有日志?(这个是关键,错误报告本身都会记录到日志里,如果面试官说没有日志,那你就怂他); > 2、错误发生的现象:指定人发生还是所有请求都会,是以前就会还是第一次出现,服务器尤其是数据库服务器负载程度,错误是否可以重现; 3、最近是否发布代码,是否改动了线上的服务器环境; 4、以前是否有类似事件发生; 万能代码: register_shutdown_function(function(){ var_dump(error_get_last()); }); 答案来源: https://segmentfault.com/q/1010000006035437 2、php中,你是如何接管系统的异常和错误处理的? > 使用register_shutdown_function,set_error_handler,set_exception_handler 3、下面代码运行的结果是?说说为什么 ~~~ function myException($exception) { echo "Exception:" , $exception->getMessage(); } set_exception_handler('myException'); try{ throw new Exception('Uncaught Exception occurred'); }catch(Exception $e){ echo $e->getMessage(); } ~~~ > 输出结果:Uncaught Exception occurred set_exception_handler() 函数可设置处理所有未捕获异常的用户定义函数,异常已被try catch 捕获,不会运行myException 推荐博文: https://www.cnblogs.com/zyf-zhaoyafei/p/6928149.html http://www.w3school.com.cn/php/php_exception.asp