加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php – symfony2服务不是单身人士

发布时间:2020-12-13 22:09:36 所属栏目:PHP教程 来源:网络整理
导读:我正在Symfony2上创建一个简单的pastebin Web应用程序,但我不能创建一个global / singleton /“container-scoped”服务.我可能犯了初学者的错误. The symfony2 service container doc说服务“只创建一次,每次请求服务时返回相同的实例”,但我的服务构造函数
我正在Symfony2上创建一个简单的pastebin Web应用程序,但我不能创建一个global / singleton /“container-scoped”服务.我可能犯了初学者的错误.

The symfony2 service container doc说服务“只创建一次,每次请求服务时返回相同的实例”,但我的服务构造函数在每次请求时都被调用.

我可以从日志中轻松验证这一点.我只是刷新/ p / new而我看到了另一个

[2012-03-31 21:32:56] app.INFO: InMemoryPasteService::__construct() [] []

我也通过记录结果确认了

spl_object_hash($this->get('twobulb_paste_service'))

在控制器中(并且每个请求的哈希值都不同).

环境(app / prod)似乎并不重要.

How to work with Scopes说默认范围是“容器”,所以我认为这意味着应该只有一个我的服务类实例.

我开始使用Symfony标准发行版(没有供应商)版本2.0.12.

源代码:

> my service,my service config
> a controller using my service

可能类似的帖子:

> https://stackoverflow.com/questions/8873824/symfony2-service-definition-issue
> Symfony2 Service Container – does get() return objects by reference or copy?
> How Service Container create object declared in services.yml?

有任何想法吗?

解决方法

以这种方式在请求之间没有保存状态.您可以将其视为在每个请求之间重新启动PHP解释器.这就是PHP的工作原理.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读