我的问题是我想在抽象类公共属性中拥有一个动态值(类的实例)。
我想将一个实例存储在不允许这样的变量中。
// Not allowed
abstract class Abs{
public $var = new VarClass();
}
// This only works for extended childrens of course, but it should work globally.
class B extends Abs{
function __construct(){
$this->var = new varClass();
}
}
我需要这是全球性的。可悲的是,抽象类不能有理想的构造函数......魔术方法也不是解决方案,因为系统在运行时定义类变量,所以未定义的变量也会运行到魔术方法中......