正在运行
app/console debug:container --show-private
未列出使用public: false
声明的服务,例如:
another_service:
public: false
class: MineBundle\Service\FirstService
但是,如果我运行app/console debug:container --show-private | wc -l
和app/console debug:container | wc -l
,我会得到不同的结果。
尝试使用symfony 2.8和3.1并获得相同的行为。
有什么想法吗?
谢谢!
答案 0 :(得分:2)
如果私人服务仅用作另一个私人服务的参数 service,即使是debug:container命令也不会显示它 使用--show-private选项时。请参阅内联私人服务 更多细节。
然后
私人服务的特殊之处在于,只注入它们 曾经,它们从服务转换为内联实例化(例如 新的PrivateThing())。这增加了容器的性能。