framework icon indicating copy to clipboard operation
framework copied to clipboard

ThinkPHP Framework

Results 260 framework issues
Sort by recently updated
recently updated
newest added

Hi there, I couldn't find a `SECURITY.md` in your repository and am not sure how to best contact you privately to disclose a security issue. Can you add a `SECURITY.md`...

enhancement

call_user_func_array() expects parameter 1 to be a valid callback, class 'think\Collection' does not have a method 'append'

ORM

https://github.com/top-think/think/issues/1083

https://github.com/top-think/framework/blob/0b5fb453f0e533de3af3a1ab6a202510b61be617/src/think/middleware/CheckRequestCache.php#L102 **业务场景:** 网站有WAP和WEB端,后台更新文章的时候需要同时清除WAP和WEB端的请求缓存,假设缓存标签为article_1。 **存在两个问题:** 1、现有的情况是缓存标签不支持像请求缓存KEY那样支持变量替换。 2、请求缓存的标签不支持设置过期时间,现在的请求缓存标签过期时间为永久有效,建议请求缓存标签的有效期和请示缓存KEY的有效期一致。

重现问题步骤如下: 定义中间件,代码如下: ```php namespace app\test\middleware; use Closure; use RuntimeException; use think\Response; class Test { public function handle($request, Closure $next) { throw new RuntimeException('测试middleware发生错误的情况1'); } public function end(Response $response) { throw...

php:>=7.2 topthink/framework:5.1.39 topthink/think-queue:2.0.4 在队列场景下,经常会报错:PDO::beginTransaction(): send of 22 bytes failed with errno=110 Connection timed out 不过数据库配置我开启断线重连了,还是会报这个错误! 有什么解决方案吗!

ORM
TP5

![QQ图片20210717102159](https://user-images.githubusercontent.com/13916868/126022482-524c575a-1c92-4ed9-a5d2-133b57cb2d56.png) ![QQ截图20210717102549](https://user-images.githubusercontent.com/13916868/126022542-3028550b-6ad8-4772-92e4-0922b57d9429.jpg) ![QQ图片20210717102818](https://user-images.githubusercontent.com/13916868/126022589-e79362f5-a23d-4756-ba0f-fd67d0463ba0.png) 第1类调2个类,2调3,3调4类中的某个方法,第四个出现问题,TP6无法定位错误位置,每次找错误位置都要一行行去查看,特别费时间。 比如在第4个类中大小写错就无法定位错误 $msg = '【'. $_SERVER['REQUEST_URI'] .'】'; 写出 $msg = '【'. $_SERVER['request_uri'] .'】'; 就只会出现上面第三个图的错误提示,有时费特别多时间来找。

用宝塔环境,在切换PHP版本时,运行环境对应的PHP扩展中没安装redis扩展,但配置环境开了redis, 电脑也装了redis, 程序运行到Cache::store('redis')->get(‘test_name’); 这语句时,框架没抛出任何错误信息,然后直接跳出当前程序(函数中)

为什么文档写着是比较时间戳 buildSql出来确实date格式 ? 有些地方又会变回时间戳

路径: vendor\topthink\framework\src\think\Http.php ` //自动创建request对象 $request = $request ?? $this->app->make('request', [], true); $this->app->instance('request', $request); ` 问一下为什么每次都要 创建新的实例 request 对象呢,能否直接改成 下面的代码。 ` $request = $request ?? $this->app->request; `