如果暂时无法更新到最新版本,可以参考下面的版本库代码记录,自行增加相关代码。
( 5.0版本补丁 | 5.1版本补丁 )
5.0版本修改方法
library/think/app.php

5.1版本修改方法
library/think/route/dispatch/Module.php

关键代码
$controller = strip_tags($result[1] ?: $config['default_controller']);
这里未对控制器进行过滤,导致引入 \ 符号就可以调用任意控制器
V5.1.31主要更新日志
- 改进
field方法 - 改进
count方法返回类型 download函数增加在浏览器中显示文件功能- 修正多对多模型的中间表数据写入
- 改进
sqlsrv驱动支持多个Schemas模式查询 - 统一助手函数与\think\response\Download函数文件过期时间
- 完善关联模型的
save方法 增加make方法仅创建对象不保存 - 修改条件表达式对静态变量的支持
- 修正控制器名获取
- 改进view方法的
field解析V5.0.23主要更新日志 - Query支持调用模型的查询范围
- 聚合查询字段支持
DISTINCT - 改进闭包验证的参数
- 多对多关联支持指定中间表数据名称
- after/before验证支持指定字段验证
- 改进多对多关联
- 改进验证类
- 增加
afterWith和beforeWith验证规则 用于比较日期字段 - 完善规则提示
- 改进断线重连
- 修正软删除的
destroy方法 - 修复模型的
save方法当data变量为空 数据不验证 - 模型增加
replace方法 - MorphOne 增加 make 方法创建关联对象实例
- 改进
count方法返回值类型 - 改进聚合查询方法的正则判断
- 改进
sqlsrv驱动 - 完善关联的
save方法 - 修正控制器名获取
原文摘自: 流年 https://blog.thinkphp.cn/869075
