我有两个班。我们称他们为'Class_A'和'Class_B'。我想在'B类'中使用'Class_A'属性和方法。像这样...如何使用第二类中的第一类属性和方法?
$a = new Class_A;
class Class_B {
function __construct() {
$a->foo = 2;
$a->magic();
}
}
当然,这是行不通的。对付它的最佳做法是什么?
- 'global'keyword?
- 使'Class_A'的属性和方法是静态的吗?
- 另一种方式......?
这一切都取决于你实际想要完成的事情。每种方法都有其自身的优点和缺点。您可以使用静态成员,继承或将Class_A传递给Class_B作为参数。这取决于你需要做什么。 – Wade 2011-01-18 23:48:54
我正在创建微小的MVC框架。 'Class_A'代表'view','Class_B'代表'controller'。 我使用静态成员来完成它,但似乎几乎所有其他MVC框架都使用“依赖注入”。 – daGrevis 2011-01-18 23:53:56