您现在的位置是:首页 > PHP框架交流PHP框架交流
thinkphp异常处理 修改thinkphp默认报错样式
上善若水2022-12-08 17:39:13【PHP框架交流】
115人已围观
简介用的现成的框架,报错太不友好了,就一个提示massage,通过调试找到报错位置还原官方报错页面,如果你也是shipXO直接过来产考方法修改.env开启debug [APP] THINK_ENV=
用的现成的框架,报错太不友好了,就一个提示massage,通过调试找到报错位置还原官方报错页面,如果你也是shipXO直接过来产考
方法修改.env 开启debug
[APP]
THINK_ENV = dev
DEBUG = true
过程
1.异常会进入app/ExceptionHandle.php
进行处理
2.查看渲染模板的位置
protected function renderExceptionContent(Throwable $exception): string
{
ob_start();
$data = $this->convertExceptionToArray($exception);
extract($data);
include $this->app->config->get('app.exception_tmpl') ?: __DIR__ . '/../../tpl/think_exception.tpl';
return ob_get_clean();
}
3.去config/app.php
定位到渲染页面
return [
// 应用地址
'app_host' => '',
// 应用的命名空间
'app_namespace' => '',
// 是否启用路由
'with_route' => true,
// 默认应用
'default_app' => 'index',
// 默认时区
'default_timezone' => MyFileConfig('common_timezone', '', 'Asia/Shanghai', true),
// 应用映射(自动多应用模式有效)
'app_map' => [],
// 域名绑定(自动多应用模式有效)
'domain_bind' => [],
// 禁止URL访问的应用列表(自动多应用模式有效)
'deny_app_list' => [],
// 异常页面的模板文件
'exception_tmpl' => APP_PATH . 'tpl/think_exception.tpl',
// 错误显示信息,非调试模式有效
'error_message' => '系统出现错误、请联系管理员',
// 显示错误信息
'show_error_msg' => true,
];
找到位置,用官方模板覆盖
4.修改后发现依旧不显示,显示十年磨一剑-为API开发设计的高性能框架
看到下方\think\facade\App::isDebug()才显示详情。
5.找到这个参数怎么设置的。
/**
* 调试模式设置
* @access protected
* @return void
*/
protected function debugModeInit(): void
{
// 应用调试模式
if (!$this->appDebug) {
$this->appDebug = $this->env->get('app_debug') ? true : false;
ini_set('display_errors', 'Off');
}
if (!$this->runningInConsole()) {
//重新申请一块比较大的buffer
if (ob_get_level() > 0) {
$output = ob_get_clean();
}
ob_start();
if (!empty($output)) {
echo $output;
}
}
}
6.定位到这个参数是env
配置的,修改配置。DEBUG = true
7.这样报错就友好的,实际只需操作第六部就行,逗了一个大圈,解决就行。
很赞哦! (0)
下一篇: 没有下一篇
相关文章
随机图文
有趣的笑话,3秒逗乐不开心的你
1、睡不着,在数羊的时候,突然有一只小羊站了出来对我说“请你用心一点,你已经数过我一次了。 2、我叫晴晴 因为今天没有太阳所以我叫青青 3、如果长得太美就是犯罪的话,那我的颜值可能会让我无期徒刑。 4、晚睡等于慢性自杀,早起就是当场去世 5、心理学上有潜意识激励的说法。例如你每天早上出门前对着镜子说一句“你很棒”。一段时间后,那块镜子就会成为一块很棒的镜子。 6、“一块玻璃准备跳楼你猜他逗女生开心的笑话
1.有一天有个婆婆坐车,做到中途婆婆不认识路了,婆婆用棍子打司机的屁股说:这是哪?司机:这是我的屁股……2.甲:那个人在干什么?乙:他在发抖。甲:他为什么要发抖了?乙:他冷丫。甲:哦,原来发抖就不会冷啦!3.妻:我真是瞎了眼踩到狗屎才会嫁给你。夫:我真是瞎了眼踩到狗屎才会娶你。狗屎:我好倒霉哦!躺倒那里都会被你两踩到shiro 匹配md5加密后的密码HashedCredentialsMatcher
shiro 匹配md5加密后的密码,shiro为我们提供好了使用md5规则,同时还可以设置md5的加密次数.我们在SimpleAuthenticationInfo里面就只用将加密后的密码丢进去,shi你能讲一个让人瞬间爆笑的笑话吗?
1、“王爷,王妃被您送去快手已经三天了。” “她认错了吗?” “没有,王妃说花花世界迷人眼,没有实力你别赛脸,今朝你薄情无义把我放逐,他日我涅槃重生必把你铲除。送你一句话,铁汁,做王呢,是该傲,但是给你脸呢,你得要!” 2、去掉一个最高温,去掉一个最低温,今天的天气预报播放完了! 3、上课的时候,小明被老师叫起来答题,小明:谢邀。 4、你要做自己 杀手小张接到了这样的命令。 5、一男