我有2个类 - UserService和ProfileService。我需要每个班级包含另一个班级。我试图通过依赖注入来做到这一点:
$clean = preg_replace('[^a-zA-Z\/\d\s:]', '', $url);
在每个类中,我定义了一个构造函数来处理这些参数。无论如何,我得到一个" ERR_EMPTY_RESPONSE" Chrome中的错误。什么是正确的方法?
1 个答案:
答案 0 :(得分:1)
在大多数情况下,循环依赖是一种糟糕设计的标志。这意味着这两个类紧密地耦合在一起,这通常意味着关注的混合。
不要试图强迫它发挥作用,而是试图找出为什么存在这种依赖性---为什么一个类需要另一个(反之亦然)?那部分真的与问题的某个方面有关吗?
一旦理解了依赖关系,解决方案通常是将侵权部分提取到第三(或第四)类,让两个类都引用它,而不是互相引用。
当然,了解更多有关您的特定问题的信息,也可以让您给出更好的答案。