【已解决】咨询一个webman关于构造函数的问题 __construct(新)

9527

问题描述

在社区看到这样一个帖子是关于构造函数的;

https://www.workerman.net/q/5948

根据帖子的描述,在webman 1.5.1的版本中,每次请求构造函数内的方法都会有执行一次(非DI注入)

和帖子的结论在当前版本中测试结果不一致;

webman是常驻内存框架,controller 初始化后会被复用,不会每次请求都初始化一次 。webman是常驻内存框架,controller 初始化后会被复用,不会每次请求都初始化一次 。

截图

反而,在执行服务启动时,并没有执行上面的初始化;

说明:当前并未开启phpdi的组件;

为此你搜索到了哪些方案及不适用的原因

是否是版本的变化,造成了执行结果的差异;

接下来安装phpdi等相关组件,且在配置中修改了container配置后,__construct函数中其它类的注入是就次性的,一次请求,其它请求进来直接共享了,但方法内的打印在每次请求中,也都执行了;

请教;谢谢;

804 2 0
2个回答

Gin

看下config/app.php 中的 'controller_reuse' => false,

latin

你发的帖子是20年的,现在23年了。
现在控制器复用默认是关闭的,可以通过配置开启。你要用框架的话建议过一遍文档。好几年前的帖子看着没啥意义了。

  • 9527 2023-04-12

    确实,可能时间太久远了;通过app参数配置验证符合预期;

年代过于久远,无法发表回答
🔝