【发布时间】:2017-08-25 02:06:36
【问题描述】:
我需要将新方法包含到现有类中,而不需要对该类进行太多更改。我不知道该怎么做。由于我不能使用例如include_once('mynew.class.php') 然后在里面写我所有的新代码,我尝试了以下并且它有效。
我可以在 B 中添加新方法,它们是 A 的过程,正如我希望的那样。
class A extends B {
"the existing code"
}
class B {
"my new code"
}
我认为这不是正确的方法,因为在这种情况下 B 应该有主逻辑,A 应该得到新代码,对吧?
我现在不知道如何在类中模拟 include 之类的东西。
当然,我可以在现有的 A 中编写我的新函数而无需继承,但在这种情况下,我想按照我解释的那样做,并且几乎不触及现有文件。
有什么建议吗?希望大家理解这个问题。
谢谢
【问题讨论】:
-
你考虑过使用特征吗? php.net/manual/en/language.oop5.traits.php
-
没有。我会仔细研究一下。所以这适合这类问题吗?我显然没有那么有经验...
-
它基本上可以让您在类中重用(或在您的情况下包含)函数。它应该适合你。
-
这似乎只是扩展了现有方法……有点重用它们?还是我错过了什么……我需要新的方法,不管现有的。对不起,如果我弄错了。
-
检查我的代码示例